SVG 转多页 PDF

SVG To Multipage PDF

我正在尝试将 SVG 转换为多页 PDF 文档。我使用 Apache Batik 进行转换,但其中没有提供 multi page pdf。在做了一些研究之后,我开始了解 docbook,并且它运行良好。它使用 ANT 脚本 进行转换。

我想知道 docbook 如何处理多页 PDF,因为 docbook 使用 Apache FOP,它使用 Apache Batik 进行 SVG 到 PDF 的转换。

它会创建单个 PDF 文件并最终将它们组合成一个 PDF 吗? 如果它和上面的一样,那么我自己将使用 Apache Batik 创建单个 PDF,并使用 PDFBox 将它们组合起来。

谢谢。

使用带有 SVG 的 XSL-FO 作为外部图形或嵌入式 SVG 的解决方案

<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
 <fo:layout-master-set>
    <fo:simple-page-master page-height="2339px" page-width="1654px" master-name="PageMaster">
        <fo:region-body margin="0mm 0mm 0mm 0mm"/>
    </fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="PageMaster">
    <fo:flow flow-name="xsl-region-body">
        <fo:block>
            <fo:external-graphic src="url(new sample.svg)" width="100%" height="100%" content-width="100%" content-height="100%"/>
        </fo:block>
    </fo:flow>
  </fo:page-sequence>
<fo:page-sequence master-reference="PageMaster">
    <fo:flow flow-name="xsl-region-body">
        <fo:block>
            <fo:external-graphic src="url(new sample2.svg)" width="100%" height="100%" content-width="100%" content-height="100%"/>
        </fo:block>
    </fo:flow>
  </fo:page-sequence>
</fo:root>

不,不是。 FOP 使用 XSL FO 标准。您可以定义诸如页面几何形状、将内容保持在一起的规则以及将内容块流入其中等内容。它不是将每个页面创建为 PDF 并加入它们。它仅使用 Batik 将 SVG 转换为 PDF 对象以包含在 PDF 输出中。所以 Batik 只是创建了一个 "block" 区域……虽然是矢量格式,但它像图像一样……而且它只是用于流入页面几何图形的块之一。