Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml PDF'中复杂页面编号的策略;s_Xml_Pdf_Xsl Fo - Fatal编程技术网

Xml PDF'中复杂页面编号的策略;s

Xml PDF'中复杂页面编号的策略;s,xml,pdf,xsl-fo,Xml,Pdf,Xsl Fo,在创建PDF时,我有一个关于自定义页面编号(“点页面”)的问题。我正在使用XSLT从XML实例创建XSL-FO。我的XSLT处理器是Saxon 9,XSL-FO处理器是RenderX(4.18) 我需要做的是能够改变页面编号,一旦它达到某一点。(页脚中的页码(静态内容)。) 假设我有一本书有多个章节。这些章节中的每一章都有一个章节号。本章编号是页码的基础 例如,如果章节号为2000,则章节的第一页将为2001 直到第998页(本章必须以偶数页结尾)为止都可以。例如,如果第2000章有1002页,

在创建PDF时,我有一个关于自定义页面编号(“点页面”)的问题。我正在使用XSLT从XML实例创建XSL-FO。我的XSLT处理器是Saxon 9,XSL-FO处理器是RenderX(4.18)

我需要做的是能够改变页面编号,一旦它达到某一点。(页脚中的页码(静态内容)。)

假设我有一本书有多个章节。这些章节中的每一章都有一个章节号。本章编号是页码的基础

例如,如果章节号为2000,则章节的第一页将为2001

直到第998页(本章必须以偶数页结尾)为止都可以。例如,如果第2000章有1002页,则最后6页的页码为:

299729982999300013002

这是不正确的,因为可能有第3000章

我需要做的是能够在第998页之后更改页码。以我的第2000章1002页为例,编号应为:

299729982998.11998.22998.22998.32998.32998.4

这就是我现在正在做的:

  • 我在我的
    fo:static content
    中使用

  • 我正在使用
    fo:page sequence
    元素中的
    initial page number
    属性设置起始页码(章节号+1)

如果有必要,我可以操纵XEP(RenderX)创建的中间文件,但我认为它可能会变得混乱,我不确定这会有多可靠。此外,更新目录可能会成为一场噩梦。(XEP生成的中间文件是经过后处理的XSL-FO;它已经生成了页码。)

有人对我可以用来实现这一目标的策略有什么建议吗?我想我在某个地方读到,我可以在
页面序列母版
元素中使用
最大重复次数
属性(比如
最大重复次数=“998”
),然后使用不同的母版页,但我不知道如何做到这一点


谢谢

@Dimitre或???-为什么要删除xslt标记?也许答案最终会与xslt相关?我重新标记了它,因为没有定义xslt问题。我们需要一个完整的例子:1。完整的XML文档(但尽可能少);2.必须从提供的XML文档生成的完整结果;3.转换必须实现/满足的任何重要属性/规则,例如结果中的特定数据项如何与源XML文档中的特定数据项相关(从中生成)。总结一下:请重新表述您的问题以定义1、2、3——然后这就是XSLT问题。现在它需要XSL-FO知识,但不需要XSLT。