Subject: Re: [xsl] Image size with XSL? From: "Mark Wilson mark@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Mon, 19 Dec 2016 16:07:37 -0000 |
>sizes.xml magick identify ^ -format "<image>\n<file>%i</file>\n<width>%w</width>\n<height>%h</height>\n</image>" ^ *.jpg
<List> <image> <file>2921-DV88-2.jpg</file> <width>640</width> <height>480</height> </image> <image> <file>2921-mn1.jpg</file> <width>640</width> <height>480</height> </image> ....... </List>
At first I was under impression that we were calling identify.exe once per each image, but actually it works even simpler - identifier can receive a file pattern with a wildcard such as "*.jpg *.png *.tif " and iterate over files itself.
Glad that it works for you!
- Max
On 18.12.2016 11:18 PM, Mark Wilson pubs@xxxxxxxxxxxx wrote:Hi Max,
I saw that application but did not realize that it could be used the way you suggested (in a batch mode).
I now have two solutions to explore, yours and John's binary module. Should keep me off the streets for a few days.
Thanks everyone. Very, very helpful.
Regards,
Mark
On 12/18/2016 2:07 PM, Max Zhaloba mzhaloba@xxxxxxxxxxxxxxx wrote:We had a similar task on one of our projects. However there was not so many files, we also invoked an external utility to read the metadata. We used Image Magick (imagemagick.org).
You can iterate over image files and call identify.exe with "-format" option that contains XML tags:
<image>\n<file>%i</file>\n<width>%w</width>\n<height>%h</height>\n</image>
and redirect the standard output to file. Then as soon as you wrap the contents of that file into the pair of opening/closing tags it becomes a well-formed XML an you can read it from XSLT. And since performance is a factor for you, it will be faster to use <xsl:key> for that purpose.
There's a handy installer of Image Magick for OS X at http://cactuslab.com/imagemagick, if you're on Mac.
- Max (blog.xml.rocks <http://blog.xml.rocks>)
On 18.12.2016 9:54 PM, Mark Wilson mark@xxxxxxxxxxxx wrote:I have an XSL stylesheet driven by an XML data source that produces about 5000 different pages, many with multiple images. I have been adding by hand a placement-index to the XML data source that arranges the images neatly, as with this page:
http://www.cpslib.org/amp/europa-themes.htm.
I am now faced with adding a huge number of images to a page or pages like this:
http://www.cpslib.org/flaws/flaws.htm
I would like to add the placement-index to the XML data source programmatically. Is there a way to obtain the height or width of a jpeg image from the file itself (image.jpg, for instance) using XSLT? Or, can someone suggest another way to do this programmatically?
Feel free to wander around the website if you find it interesting.
Thanks, Mark
XSL-List info and archive <http://www.mulberrytech.com/xsl/xsl-list> EasyUnsubscribe <-list/2754769> (by email)
XSL-List info and archive <http://www.mulberrytech.com/xsl/xsl-list> EasyUnsubscribe <-list/2950507> (by email)
XSL-List info and archive <http://www.mulberrytech.com/xsl/xsl-list>
EasyUnsubscribe <-list/2966980> (by email <>)
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Image size with XSL?, Max Zhaloba mzhaloba | Thread | Re: [xsl] Image size with XSL?, Paul Tyson phtyson@x |
Re: [xsl] escaping curly braces in , Christophe Marchand | Date | Re: [xsl] Image size with XSL?, Paul Tyson phtyson@x |
Month |