繁体   English   中英

XSL-FO 和 XML:每页页眉中的 Bibel Bookname

[英]XSL-FO and XML: Bibel Bookname in Header on every Page

我在使用 XSL-FO 和 XML 时遇到了麻烦。 我实际上对这个领域很陌生。 但据我所知,我已经喜欢它了。

我的问题是这样的,到目前为止我已经尝试了所有方法:我希望当前的圣经书名出现在每一页的标题中,直到新的一页开始。

我这里有 XSL 和 XML 代码: https : //xsltfiddle.liberty-development.net/nb9PtDi/17

有没有可能? 我必须在代码中更改什么?

查看fo:markerfo:retrieve-marker (参见https://www.w3.org/TR/xsl11/#fo_marker )。

书名的副本将放在书的第一个 FO 开头的fo:marker ,标题的fo:static-content将包含一个带有retrieve-class-namefo:retrieve-marker匹配您添加的fo:markermarker-class-name

搜索有关fo:marker将为您提供一些操作示例。


我在https://xsltfiddle.liberty-development.net/nb9PtDi/21摆弄过它

我在CAPTION的模板中添加了一个fo:marker (为了清楚起见,省略了一些属性):

<xsl:template match="CAPTION">
  <fo:block page-break-before="always">
    <fo:marker marker-class-name="caption">
      <xsl:apply-templates />
    </fo:marker>
    <xsl:value-of select="."/>
  </fo:block>
</xsl:template>

并用fo:retrieve-marker替换了“HEADER”文本(为了清楚起见,省略了一些属性):

<fo:static-content flow-name="kopf">
  <fo:block>
    <fo:retrieve-marker retrieve-class-name="caption" />
  </fo:block>
</fo:static-content>

两者之间的联系是“caption”的标记类名。

您似乎不需要它们,但是您可以在fo:retrieve-marker上设置retrieve-positionretrieve-boundary属性来控制发生的情况,例如,在同一页面上有两个fo:marker时会发生什么。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM