如何在 XSL-FO 中的块内收缩 multi "external-graphic"
How to shrink multi "external-graphic" inside block in XSL-FO
我在块容器中创建了一个块。而在块内部,动态的外部图形数量很少。我希望图像的宽度不应超过块容器的宽度。
<fo:block-container width="90mm" display-align="center" text-align="center" margin-bottom="1mm">
<fo:block line-height="0mm">
<fo:external-graphic src="..."
content-width="scale-down-to-fit" content-height="scale-down-to-fit"
display-align="center" text-align="center"/>
<fo:external-graphic src="..."
content-width="scale-down-to-fit" content-height="scale-down-to-fit"
display-align="center" text-align="center"/>
</fo:block>
</fo:block-container>
我会说添加 content-width="scale-down-to-fit"
,但你已经有了。
您可以尝试删除 content-height
属性,因为 fo:block-container
的高度不固定。
您也可以尝试删除 content-width
和 content-height
并添加 max-width="100%"
(参见 https://www.w3.org/TR/xsl11/#max-width)。
在我的例子中,诀窍是结合 content-height="scale-to-fit" 和 max-width="100%"。当我删除其中一个(无论是哪个)时,图像超出了范围。
<fo:external-graphic src="..." content-height="scale-to-fit" max-width="100%" />
我在块容器中创建了一个块。而在块内部,动态的外部图形数量很少。我希望图像的宽度不应超过块容器的宽度。
<fo:block-container width="90mm" display-align="center" text-align="center" margin-bottom="1mm">
<fo:block line-height="0mm">
<fo:external-graphic src="..."
content-width="scale-down-to-fit" content-height="scale-down-to-fit"
display-align="center" text-align="center"/>
<fo:external-graphic src="..."
content-width="scale-down-to-fit" content-height="scale-down-to-fit"
display-align="center" text-align="center"/>
</fo:block>
</fo:block-container>
我会说添加 content-width="scale-down-to-fit"
,但你已经有了。
您可以尝试删除 content-height
属性,因为 fo:block-container
的高度不固定。
您也可以尝试删除 content-width
和 content-height
并添加 max-width="100%"
(参见 https://www.w3.org/TR/xsl11/#max-width)。
在我的例子中,诀窍是结合 content-height="scale-to-fit" 和 max-width="100%"。当我删除其中一个(无论是哪个)时,图像超出了范围。
<fo:external-graphic src="..." content-height="scale-to-fit" max-width="100%" />