[NTG-context] parameters of (setup)externalfigure, conversions etc.

Henning Hraban Ramm texml at fiee.net
Fri Aug 12 13:07:17 CEST 2022


Am 11.08.22 um 15:51 schrieb Henning Hraban Ramm via ntg-context:
> Hi Hans,
> 
> yesterday you told me about the image conversions in grph-con.lua, and I 
> tried to find out how to use them. Up to know I only knew "mp" for SVG 
> images.
> 
> I found I can use "gray.pdf" or "cmyk.pdf" to convert an image (JPG or 
> PNG) to grayscale/CMYK, but the resolution isn’t used for downsampling 
> (of course, it’s not mentioned in the command template):
> 
> \externalfigure[hacker][conversion={gray.pdf},resolution=72]
> 
> I tried to write my own downsampling converter, but don’t understand how 
> I can hook it into the list of converters:
> 
> """
> 
> local downsample = sandbox.registerrunner {
>    name     = "downsample",
>    program  = "gm",
> template = [[convert -compress Zip -sampling-factor 1x1 -density 
> %resolution%x%resolution% -resample %resolution%x%resolution% %oldname% 
> %newname%]],
>    checkers = checkers,
>    defaults = defaults,
> }
> 
> programs.downsample = { runner = downsample }

I found the solution in 
https://wiki.contextgarden.net/Using_Graphics#Image_Conversion, but 
that’s not as elegant as those in grph-inc.lua

(And I learned that ImageMagick’s convert works differently than 
GraphicsMagick’s WRT -density; i.e. you must use "gm convert".)

Peter Münster’s grph-downsample.lua was better, it calculated the actual 
pixel size necessary, but that doesn’t work any more.

> """
> 
> (I’m not sure if I must calculate the desired pixel size beforehand.)
> 
> -*-*-
> 
> Apart from converters, there are several parameters of \externalfigure 
> that I don’t understand and thus can’t document in the Wiki; a few are 
> even not yet documented in the interface files:
> 
> * equalwidth/equalheight
> * s/sx/sy
> * xmax/ymax
> * prefix, label, comment
> * bodyfont
> * mask
> * frames (≠ frame)
> * interaction (PDF inclusion; found)crossreference
> * resources
> * display (alternative source? multimedia only?)
> * order (of extensions; found)
> * crop, transform
> * controls, preview: only related to video and thus obsolete?
> * hfactor/wfactor: When do these make sense? (I know factor)

Also, orientation seems to be missing in the interface (auto-syntax 
doesn’t pick it up).

Hraban


More information about the ntg-context mailing list