Xml 通过fop将docbook处理为PDF时获取不需要的第二个标题页

Xml 通过fop将docbook处理为PDF时获取不需要的第二个标题页,xml,pdf-generation,apache-fop,docbook,Xml,Pdf Generation,Apache Fop,Docbook,我正在用dockbookxml构建一个标准的图书格式,然后通过fop将其格式化为PDF 然而,当我构建最终的PDF时,我得到了第二个断开的标题页,它又有了标题和内联图像。在这一页上,标题在整页上对齐(奇怪地分布),图像偏离中心 书名后面还有一个在书名中不存在的冒号 如果使用XSL参数删除标题页,则标题页将被删除,但断开的标题页仍保留在PDF中 我可以看到在.fo文件中生成第二个页面的额外行,但无法通过xsltproc计算它是如何到达那里的。 我的第一个假设是,它会自动创建标题页,然后在阅读其他章

我正在用dockbookxml构建一个标准的图书格式,然后通过fop将其格式化为PDF

然而,当我构建最终的PDF时,我得到了第二个断开的标题页,它又有了标题和内联图像。在这一页上,标题在整页上对齐(奇怪地分布),图像偏离中心

书名后面还有一个在书名中不存在的冒号

如果使用XSL参数删除标题页,则标题页将被删除,但断开的标题页仍保留在PDF中

我可以看到在.fo文件中生成第二个页面的额外行,但无法通过xsltproc计算它是如何到达那里的。 我的第一个假设是,它会自动创建标题页,然后在阅读其他章节之前重新解释标题

如果我通过氧气导出,我就不会遇到标题页的问题,这让我更加困惑

以下是图书代码:

<!DOCTYPE book [
<!ENTITY chap1 SYSTEM "01_n.xml">
<!ENTITY chap2 SYSTEM "02_n.xml">
<!ENTITY chap3 SYSTEM "03_n.xml">
<!ENTITY chap4 SYSTEM "04_n.xml">
<!ENTITY chap5 SYSTEM "05_n.xml">
<!ENTITY chap6 SYSTEM "06_n.xml">
<!ENTITY chap7 SYSTEM "07_n.xml">
<!ENTITY chap8 SYSTEM "08_n.xml">
<!ENTITY chap9 SYSTEM "09_n.xml">
<!ENTITY chap10 SYSTEM "10_n.xml">
<!ENTITY chap11 SYSTEM "11_n.xml">
<!ENTITY chap12 SYSTEM "12_n.xml">
<!ENTITY chap13 SYSTEM "13_n.xml">
<!ENTITY chap14 SYSTEM "14_n.xml">
<!ENTITY chap15 SYSTEM "15_n.xml">
<!ENTITY chap16 SYSTEM "16_n.xml">
<!ENTITY chap17 SYSTEM "17_n.xml">
<!ENTITY chap18 SYSTEM "18_n.xml">
]>

<book xmlns="http://docbook.org/ns/docbook" version="5.0">
    <info>
        <title>Manual</title>
         <subtitle>
            <inlinemediaobject>
                <imageobject>
                    <imagedata fileref="logo.png" format="image_format" scalefit="1" width="100%" contentdepth="100%" />
                </imageobject>
            </inlinemediaobject>
        </subtitle>
    </info>

    &chap1;
    &chap2;
    &chap3;
    &chap4;
    &chap5;
    &chap6;
    &chap7;
    &chap8;
    &chap9;
    &chap10;
    &chap11;
    &chap12;
    &chap13;
    &chap14;
    &chap15;
    &chap16;
    &chap17;
    &chap18;
</book>
我使用的formal.xsl没有什么特别之处,如果使用标准的docbook xsl文件,我会得到同样的结果

谢谢你的帮助!通过搜索现有问题,我已经获得了许多关于docbook格式的有用提示。

提供了线索:

我使用的是:

当我应该使用:


后一种代码删除了第二个不可靠的页面,而前一种代码只删除了分页符。

标题页实际上由两个页面组成:recto和verso。您使用什么XSL参数来删除它?如果我使用以下参数,它会删除正确的标题页并留下错误的标题页:
如果我使用以下参数,它只会删除标题页和错误的标题页之间的分页符:
如果您想完全删除不稳定的页面,您将需要这两个参数。
pdf:   
    xsltproc  \
    --output  myfile.fo  \
    --stringparam  paper.type  A4  \
    /docbook/format.xsl \
    book.xml

    fop  -fo  myfile.fo  -pdf  myfile.pdf

    open myfile.pdf