使用 Apache FOP 在块中将图形定位在右下角
Position Graphic @ Bottom-Right in a Block using Apache FOP
使用 Apache FOP 我想将 <fo:external-graphic>
放置在固定大小的 <fo:block>
或 <fo:block-container>
中。图形应位于块的右下角。我只是不知道如何指定位置。有人有什么想法吗?
现在,如果我只有一张图片,找出将其放置在何处是没有问题的,但我有多张尺寸略有不同的图片,并希望它们(按比例缩放后)在右下角对齐.
在绝望中,我尝试了 <fo:external-graphic allowed-width-scale="150% 50% 25%"/>
,根据 w3c,这是一个有效的选项,但 Saxon 抛出了一个 net.sf.saxon.trans.XPathException
.
现在,应大众需求,一些 FO:
<fo:block-container position="absolute" top="42mm" left="192mm" width="70mm" background-color="red">
<fo:block background-color="green">
<fo:external-graphic border-style="none" content-height="13mm" src="wiki_96dpi_290x81_7673x2143my.jpg" background-color="blue"/>
</fo:block>
</fo:block-container>
结果如下:
现在,如何让图像在 <fo:block-container>
中右对齐,以便绿色在左边?像这样:
因此,应用 Tony 的解决方案后,结果如下所示:
<xsl:variable name="sign_height">13mm</xsl:variable><!-- Höhe des Unterschrifts -->
: :
: :
<fo:block-container position="absolute" top="42mm" left="192mm" width="70mm">
<fo:block text-align="right" max-height="{$sign_height}" font-size="0" background-color="green">
<fo:external-graphic content-height="{$sign_height}" src="wiki_96dpi_290x81_7673x2143my.jpg" border-style="none"/>
</fo:block>
</fo:block-container>
请注意 <fo:block>
上的 max-height="..."
和 font-size="0"
如何也摆脱了图像上方和下方的(不需要的)填充。
要使图形右对齐,请将 text-align="right"
添加到 fo:block
。
要使 fo:block
适合图形,还要添加 max-height="13mm" font-size="0"
。
使用 Apache FOP 我想将 <fo:external-graphic>
放置在固定大小的 <fo:block>
或 <fo:block-container>
中。图形应位于块的右下角。我只是不知道如何指定位置。有人有什么想法吗?
现在,如果我只有一张图片,找出将其放置在何处是没有问题的,但我有多张尺寸略有不同的图片,并希望它们(按比例缩放后)在右下角对齐.
在绝望中,我尝试了 <fo:external-graphic allowed-width-scale="150% 50% 25%"/>
,根据 w3c,这是一个有效的选项,但 Saxon 抛出了一个 net.sf.saxon.trans.XPathException
.
现在,应大众需求,一些 FO:
<fo:block-container position="absolute" top="42mm" left="192mm" width="70mm" background-color="red">
<fo:block background-color="green">
<fo:external-graphic border-style="none" content-height="13mm" src="wiki_96dpi_290x81_7673x2143my.jpg" background-color="blue"/>
</fo:block>
</fo:block-container>
结果如下:
现在,如何让图像在 <fo:block-container>
中右对齐,以便绿色在左边?像这样:
因此,应用 Tony 的解决方案后,结果如下所示:
<xsl:variable name="sign_height">13mm</xsl:variable><!-- Höhe des Unterschrifts -->
: :
: :
<fo:block-container position="absolute" top="42mm" left="192mm" width="70mm">
<fo:block text-align="right" max-height="{$sign_height}" font-size="0" background-color="green">
<fo:external-graphic content-height="{$sign_height}" src="wiki_96dpi_290x81_7673x2143my.jpg" border-style="none"/>
</fo:block>
</fo:block-container>
请注意 <fo:block>
上的 max-height="..."
和 font-size="0"
如何也摆脱了图像上方和下方的(不需要的)填充。
要使图形右对齐,请将 text-align="right"
添加到 fo:block
。
要使 fo:block
适合图形,还要添加 max-height="13mm" font-size="0"
。