代码之家  ›  专栏  ›  技术社区  ›  Anusha Maddali

在java中使用apache fop使用多个FO对象生成一个PDF

  •  0
  • Anusha Maddali  · 技术社区  · 7 年前

    我们知道Apache fop使用FO(格式化对象)生成pdf。FO是通过应用xsl从xml创建的。

    我的要求是,我将生成多页pdf文件。每个页面模板都会不同,所以我需要多个xml和xsl文件来制作一个pdf。我曾想过将它们合并并创建一个FO,但一些PDF大小将持续到2000页,这将导致 OutOfMemoryError

    我浏览了Apache FOP参考示例文件,以使用多个FOP创建一个pdf,但找不到一个。

    1 回复  |  直到 7 年前
        1
  •  0
  •   lfurini    7 年前

    一个FO文件,您可以包含任意多个 fo:page-sequence 或者需要,每个人都有自己的 master-reference

    • 几个 具有 相同的 页面布局(想想书中的不同章节)
    • fo:页面序列 每个都有一个
    • 之前案例的组合

    此外,FOP处理每个页面的内容 fo:页面序列 因此,独立使用许多较小的页面序列而不是巨大的页面序列(如果可能的话)也有助于避免内存不足错误。