【问题标题】:Apache FOP use data from Service for PDFApache FOP 使用来自 Service for PDF 的数据
【发布时间】:2017-10-12 09:22:42
【问题描述】:

我想使用 Apache FOP 生成一个 PDF,其中包含我编写的 ServiceClass 提供的数据(一些字符串和数组,其中包含对象)。

在示例实现中,template.fo 如下所示:

    #foreach( $salesRow in $salesRows )
       <fo:table-row height="1cm">
            <fo:table-cell border-style="solid" padding="3">
                 <fo:block>
                     $salesRow.var1
                 </fo:block>
            </fo:table-cell>
            <fo:table-cell border-style="solid" padding="3">
                 <fo:block>
                      $salesRow.var2
                 </fo:block>
            </fo:table-cell>
     #end

我要如何处理我的数据才能在 .fo 中访问它,就像在示例中访问它一样?

我想我必须使用 Xalan,但我找不到任何信息。

【问题讨论】:

    标签: java apache pdf apache-fop


    【解决方案1】:

    它看起来像一个velocity模板,因此您必须使用velocity对其进行预处理,或者使用XSLT (xalan)。但是如果你想使用 XSLT,你必须首先生成一个 XML 文档,其中包含生成 PDF 所需的所有数据。

    更新

    对于本示例,您需要这样的文档:

    <?xml version="1.0"?>
    <saleRows>
        <saleRow var1="..." var2="..."/>
        <saleRow var1="..." var2="..."/>
        ...
    </saleRows>
    

    或:

    <?xml version="1.0"?>
    <saleRows>
        <saleRow>
            <var1>...</var1>
            <var2>...</var2>
        </saleRow>
        <saleRow>
            <var1>...</var1>
            <var2>...</var2>
        </saleRow>
        ...
    </saleRows>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-04
      • 2022-11-25
      • 1970-01-01
      • 2012-10-25
      相关资源
      最近更新 更多