使用 XSL:FO 缩放图像

IMAGE scaling using XSL:FO

我试图在使用 XSL:FO 渲染图像时关闭图像缩放。我的输出是 A4 大小的 PDF,我正在渲染图像,其大小可以动态变化,我无法控制。我想按原样显示图像,但 xsl:fo 正在缩放图像并且输出看起来不一致。我找不到关闭缩放的方法。

理想情况下,如果我的图像大小相同,如果它可以容纳在分配的 space 中,如果不能正确缩小宽度和高度,则更好 我正在使用 XSLT1.0 并尝试了

的组合

<fo:external-graphic height="700pt" width="600pt" 
    content-height="scale-to-fit" content-width="scale-to-fit" 
    scaling="non-uniform"
    src="url('data:$mime;base64,{$src}')"/>

    <fo:external-graphic height="700pt" width="600pt" 
                         content-height="700pt" content-width="600pt" 
                         src="url('data:$mime;base64,{$src}')"/>

如果您希望保留原样*除非“它太大”,那么您可以使用:

<fo:external-graphic src="myimage.jpg" width="100%" content-width="scale-down-to-fit"/>

这将占据所需区域的 100%,如果它太大,则在宽度方向上(均匀地)缩小它直到它适合。