XSL-将2个fo:blocks放在页面上在一起

时间:2018-07-12 09:19:08

标签: xslt xsl-fo

在XSLT中,我有fo:region-body,属性为column-count="3"和2 fo:blocks。第一列必须跨所有列(第二列fo:block的标题带有水平线)。第二个是一块分为三列的文本。

<fo:block span="all">
    <xsl:apply-templates select="//region[@name='BodyTitle']"/>
</fo:block>
<fo:block span="none">
     <xsl:apply-templates select="//region[@name='Body_3_Columns']"/>
</fo:block>

我想将这些块保留在同一页面上,但不会产生积极的结果。在这种情况下,“保持在一起”,“与下一个保持一致”等功能不起作用。我什至试图将它们放在fo:block-container中,但是根据选择的跨度值(全部/无),它们都显示为一列或三列。

有什么办法可以解决我的问题?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果您使用的是AH Formatter,则可以为文本块输入三列fo:block-container

<fo:block keep-with-next.within-page="always">...</fo:block>
<fo:block-container column-count="3" keep-together.within-page="always">...

如果整个文档有三列,则可以将span="all"放在fo:blockfo:block-container上,以获取{{1 }}。

相关问题