On Jun 6, 2012, at 2:45 PM, Marco wrote:
> Hi,
>
> according to the wiki the \externalfigure key “factor” has the
> options:
>
> max: aspect ratio is kept, the image is scaled to
> the bigger (oversized) variant
>
> fit: aspect ratio is kept, the image is scaled to
> the smaller (fitted) variant
>
> In the following example I expect the third image to have a width of
> 4cm and a height of 4cm. However, both values are 3cm. The aspect
> ratio is kept, but “max” and “fit” behave the same.
>
> \startbuffer [img]
> \useMPlibrary [dum]
> \startTEXpage
>\externalfigure [dummy] [width=5cm,height=5cm]
> \stopTEXpage
> \stopbuffer
> \ctxcommand{runbuffer("img", "img", true)}
>
> \starttext
>
> \externalfigure [\jobname-img]
> [width=3cm, height=4cm]
>
> \blank
> \externalfigure [\jobname-img]
> [factor=fit, width=3cm, height=4cm]
>
> \blank
> \externalfigure [\jobname-img]
> [factor=max, width=3cm, height=4cm]
>
> \stoptext
>
> Is this a bug or am I misunderstanding the wiki? Anyhow, is there a
> clean solution to keep the aspect ratio and scale the image to
> whichever value is larger?
>
>
> Marco
I played with your example a little and rooted around in grph-trf.mkiv. It
seems "max" selects how to scale based on which dimension in the original
figure is greater. Oddly, the dimensions of the MP figure are 142.26682pt by
142.2377pt. So I suspect that "max" is selecting the width as the dimension to
scale to the specified width=3cm in your case. (Change the height of the MP
figure to 5.01cm and you'll see a change.) Whether that's a bug or intended is
a question for others. If not, then "max" is for this problem:
Q. How to scale an image so that the largest dimension is 4cm?
A. \externalfigure [\jobname-img] [factor=max, width=4cm, height=4cm]
If this is correct, I'd be glad to try to clarify the wiki. (I've not done much
wiki-ing.)
I suppose you could fix your problem with something like
\ifdim\desiredwidth>\desiredheight
\externalfigure [\jobname-img][width=\desiredwidth]
\else
\externalfigure [\jobname-img][height=\desiredheight]
\fi
This e-mail message (including any attachments) is for the sole use of
the intended recipient(s) and may contain confidential and privileged
information. If the reader of this message is not the intended
recipient, you are hereby notified that any dissemination, distribution
or copying of this message (including any attachments) is strictly
prohibited.
If you have received this message in error, please contact
the sender by reply e-mail message and destroy all copies of the
original message (including attachments).
___
If your question is of interest to others as well, please add an entry to the
Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://tex.aanhet.net
archive : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___