xslt - 如何在XSL-FO中正确插入空行?

标签 xslt xsl-fo

我正在尝试弄清楚如何正确地做到这一点。我尝试在代码中使用处理指令,但似乎它们根本被忽略了。

正文中:

end of a paragraph.<?linebreak?></p>

至于模板,我尝试过:

<xsl:template match="processing-instruction('linebreak')">
    <fo:block>
        <xsl:apply-templates/>
        <fo:leader/>
    </fo:block>
</xsl:template>

或者只是为了测试目的:

<xsl:template match="processing-instruction('linebreak')">
    <fo:block>XXXX</fo:block>
</xsl:template>

无论我做什么,模板都不会被使用。

我在 eXist-db 应用程序 (3.0RC1) 中使用它,但我认为这与 eXist-db 无关。有FOP 1.1。我不确定撒克逊版本。

最佳答案

传统上,您不会在段落末尾插入换行符。相反,您指定例如space-below="12pt"位于包含该段落的 fo:block 上。

即使您不想要,也始终会插入换行符(例如,当段落放置在页面底部并且换行符将换行到下一页时。下面的空格可以是有条件的,因此如果该空间出现在页面底部,则会折叠起来。这会带来更好看的布局。

关于xslt - 如何在XSL-FO中正确插入空行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42650187/

相关文章:

apache - XSL FO - 尊重填充

xml - 在平面结构中使用 xpath 导航到节点

xml - xsl :fo retrieve-marker not valid child

xml - 向 XSL-FO 文档添加行号

java - 如何检测使用 Apache FOP 呈现的 XSL-FO 文档中的溢出或换行符

java - 将 PDF 转换为 XSL-FO

xml - XSLT 识别没有属性的 XML 标签元素

xslt - 如何使用 XSLT 添加父节点

java - 使用 Saxon 9 将 DocBook 文件转换为 EPUB

xml - 多个元素到平面字符串转换