【问题标题】:Generating output from XML and CSS with docbook - working for HTML, failing for PDF使用 docbook 从 XML 和 CSS 生成输出 - 适用于 HTML,适用于 PDF
【发布时间】:2010-10-29 10:35:54
【问题描述】:

从一系列 xml 文件和一个样式表开始,我使用 docbook-xsl-ns-1.73、libxslt-1.1.22.win32 和 fop-0.94 生成了一个 HTML 文件。样式表说代码块必须有编号的行和灰色的背景。 这是将 xmls 转换为 html 的 and 任务的一部分:

<exec executable="${XSLTPROC_EXECUTABLE}">
     <arg value="--output" />
     <arg value="${target.html.dir}/${book}_toc.xml" />

     <arg value="--xinclude" />

     <arg value="--param" />
     <arg value="html.stylesheet" />
     <arg value="'css/visixd-docbook.css'" />

     <arg value="--param" />         
     <arg value="chunk.separate.lots" />
     <arg value="1" />

     <arg value="--param" />         
     <arg value="chunk.first.sections" />
     <arg value="1" />

     <arg value="--param" />
     <arg value="chunk.section.depth" />
     <arg value="8" />

     <arg value="--param" />         
     <arg value="toc.section.depth" />
     <arg value="3" />

     <arg value="--param" />         
     <arg value="navig.graphics" />
     <arg value="1" />

     <arg value="--param" />         
     <arg value="ignore.image.scaling" />
     <arg value="1" />

     <arg value="src/reusable/xsl/makeCustomToc.xsl" />
     <arg value="src/workspace/${book}/${language}/${book}.xml" />
    </exec> 

现在这个任务工作得非常好,产生了所需的输出。

用于将 xmls 转换为 pdf 的类似任务具有以下参数:

<exec executable="${XSLTPROC_EXECUTABLE}">
     <arg value="--output" />
     <arg value="${target.fo.dir}/${book}.fo" />

     <arg value="--param" />
     <arg value="paper.type" />
     <arg value="'USletter'" />         

     <arg value="--param" />
     <arg value="img.src.path" />
     <arg value="'src/workspace/${book}/${language}/'" />

     <arg value="--param" />
     <arg value="fop.extensions" />
     <arg value="0" />

     <arg value="--param" />
     <arg value="fop1.extensions" />
     <arg value="1" />

     <arg value="--param" />
     <arg value="pdf.stylesheet" />
     <arg value="'css/visixd-docbook.css'" />

     <arg value="--xinclude" />

     <arg value="--param" />         
     <arg value="chunk.separate.lots" />
     <arg value="1" />

     <arg value="--param" />         
     <arg value="chunk.first.sections" />
     <arg value="1" />

     <arg value="--param" />
     <arg value="chunk.section.depth" />
     <arg value="8" />

     <arg value="--param" />         
     <arg value="toc.section.depth" />
     <arg value="3" />

     <arg value="${DOCBOOK_XSL_HOME}/fo/docbook.xsl" />
     <arg value="src/workspace/${book}/${language}/${book}.xml" />
    </exec>

问题是我的 pdf 转换任务无法按照样式表中的说明格式化代码行。 有什么问题?考虑到转换为 html 使用相同的样式表并且有效。 我应该在哪里寻找解决方案? 提前致谢。

【问题讨论】:

    标签: xml ant pdf-generation docbook apache-fop


    【解决方案1】:

    您正在尝试使用 CSS 格式化 FO/PDF 输出。那是行不通的。

    现有的 DocBook XSL 样式表没有名为 pdf.stylesheet 的参数。 chunk.* 参数仅用于 HTML 输出。

    “代码块”和“代码行”是什么意思?您是指 XML 源中的 &lt;programlisting&gt; 元素吗?

    您应该查阅有关使用 DocBook XSL 的权威参考:http://www.sagehill.net/docbookxsl/index.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-18
      • 1970-01-01
      • 2021-07-30
      • 2019-02-19
      • 2016-01-14
      • 1970-01-01
      相关资源
      最近更新 更多