Scale down to fit an image in FOP

Benjamin Muschko picture Benjamin Muschko · Jun 2, 2011 · Viewed 15.6k times · Source

I am using FOP version 1.0 to create PDFs. In one of the pages I'd like to display an image (2552 x 4200 pixel) and scale it down if it doesn't fully fit on the page. As far as I could see on the mailing list the recommended way of doing this would be following:

<fo:external-graphic inline-progression-dimension.maximum="100%" 
                     content-height="scale-down-to-fit" 
                     content-width="scale-down-to-fit" 
                     src="..."/>

Unfortunately, that still doesn't display the whole image. The lower part of the image is cut off. Can anyone give me a hint on what I am potentially doing wrong?

Answer

Lukas Eder picture Lukas Eder · Aug 6, 2014

I found this page here explaining how scaling works with XSL-FO.

Essentially, this is the snippet that I used to make it work:

<fo:external-graphic
    src="url('...')"
    width="100%"
    content-height="100%"
    content-width="scale-to-fit"
    scaling="uniform"
    xsl:use-attribute-sets="img"/>

I found that width="100%" was the missing piece in your own attempts. Hope this helps future visitors.