[NTG-context] When newsizing an external figure bei [width=<some pt>], what will be its height in pt and viceversa?

Rudolf Bahr quasi at quasi.de
Sat Feb 23 12:37:42 CET 2019


On Sat, Feb 23, 2019 at 11:56:32AM +0100, Hans Hagen wrote:
> On 2/23/2019 11:08 AM, Rudolf Bahr wrote:
> > On Fri, Feb 22, 2019 at 12:59:55PM +0100, Peter M√ľnster wrote:
> > > On Fri, Feb 22 2019, Rudolf Bahr wrote:
> > > 
> > > > The picture sizes in px One gets by invoking for instance graphics Magick's identify
> > > > in a lua program:
> > > 
> > > Or just img.scan():
> > > 
> > > \startluacode
> > >    local image = img.scan{filename = "my-image.jpg"}
> > >    logs.report("xsize", image.xsize)
> > >    logs.report("ysize", image.ysize)
> > > \stopluacode
> > > 
> > > -- 
> > >             Peter
> > 
> > Hi Peter,
> > 
> > thank you for pointing to img.scan{}! It's indeed shorter than to invoke Graphics Magick
> > in Lua. Remains the conversion of image sizes into pt. There is an example in the chapter
> > "Calculations in Lua" in "https://wiki.contextgarden.net/Image_Placement" (a work in
> > progress). According to there it's necessary to know the resolution in order to convert
> > image sizes from px to pt which at least I don't know. Mostly I can preset one size of
> > a picture (say the width in pt) to be able to place it on a page and assuming
> > x-resolution = y-resolution and keeping width-to-height ratio I calculate the missing
> > size (here the height in pt) in Lua by
> > 
> >                                                              picture-height-in-px
> > asked-picture-height-in-pt = preset-picture-width-in-pt  *  --------------------
> >                                               		    picture-width-in-px
> > 
> > This is simple and normally it suffices for me.
> Better use the built-in methods:
> 
> \starttext
> 
>     \getfiguredimensions[t:/sources/mill.png]
> 
>     (\figurewidth,\figureheight)
> 
>     (\figurexsize,\figureysize)
> 
> \stoptext
> 
> as it prevents opening the files multiple times. It's also more futureproof.
> 
> Hans
> 

Hi Hans,

I fear it doesn't work. I used the above code with a test-picture of mine
(in .png and .jpg version) and got:

(0sp,0sp)
(0,0)

Now I'm baffled what the explanation could be. Are "mill" or "cow" somehow
specially prepared? I used:

ConTeXt  ver: 2018.03.16 22:20 MKIV beta  fmt: 2018.3.21 and
getfiguredimensions[~/my-test-picture.png]

Rudolf


More information about the ntg-context mailing list