Apache FOP将两个元素保持在一起不起作用

时间:2014-04-11 08:35:16

标签: apache xslt

我有以下xslt:

  <xsl:template match="P">
    <fo:block>
      1.1 First Image
    </fo:block>
    <xsl:apply-templates />
  </xsl:template>

 <xsl:template match="figure">
        <fo:block margin-top="-0.30in"  keep-with-previous.within-page="always">
              <fo:external-graphic>
                 <xsl:attribute name="src"> <xsl:value-of select="abc.svg" />
                  </xsl:attribute>
              </fo:external-graphic>
            </fo:block>
 </xsl:template>

这两个模板都将以递归方式调用。

我的输出是: P标签进入一个有空间的页面。由于数字很大,所以在下一页显示。我希望他们在一起。

尝试过的解决方案:keep-with,break-after,page-break-after。

保持不起作用。其他人正在为每个P标签创建新页面,尽管前一个标签中有空格。 我正在使用FOP1.0生成PDF输出。

请帮忙。

提前致谢。

1 个答案:

答案 0 :(得分:1)

变化

<xsl:template match="P">
    <fo:block>
        1.1 First Image
    </fo:block>
    <xsl:apply-templates />
</xsl:template>

<xsl:template match="P">
    <fo:block keep-with-next.within-page="always">
        1.1 First Image
    </fo:block>
    <xsl:apply-templates />
</xsl:template>