我有一个模板PDF,其中有一个部分将像桌子一样布局。数据将来自查询。所以这个表将是动态的,行数未知。
如何使用ColdFusion完成此操作?它是使用LiveCycle创建模板和创建此部分的组合,因此它是动态的,然后使用CFPDF来填充它。
现在我正在使用填充静态字段。
<cfpdfform source="Template.pdf"
destination="Template2.pdf" action="populate">
<cfpdfsubform name="form1">
<cfpdfformparam name="pdf_controlNum" value="123">
<cfpdfformparam name="pdf_ReportDate" value="05/01/2012">
</cfpdfsubform>
</cfpdfform>
答案 0 :(得分:1)
我找到了解决方案。这是在这个论坛:
http://www.experts-exchange.com/Software/Server_Software/Web_Servers/ColdFusion/Q_26528588.html
线程的底部是:
2个关键点 1.在cf中你需要在cfpdfform中设置overwritedata =“yes” 2. pdf需要是一个动态的pdf。
希望这有助于他人。我没有如何博客,但如果你知道一个,请告诉我。非常方便。
<cfpdfsubform name="details">
<cfpdfsubform name="Table1">
<cfloop from="1" to="#getClientOrderDetails.recordCount#" index="i">
<cfpdfsubform name="Row1" index = "#i#">
<cfpdfformparam name="pdfDescription" value="#getClientOrderDetails.ItemDescription[i]#">
<cfpdfformparam name="pdfItemQuantity" value="#getClientOrderDetails.ItemQuantity[i]#">
<cfpdfformparam name="pdfItemUnitPrice" value="#getClientOrderDetails.ItemUnitPrice[i]#">
</cfpdfsubform>
</cfloop>
</cfpdfsubform>
</cfpdfsubform>
答案 1 :(得分:0)
您是否只想创建PDF文件?如果是这样,您还必须在cfdocument
之后调用样式表<cfdocument
format="pdf"
filename = "pdf_file_path\#pdf_controlNum#_#pdf_ReportDate#.pdf"
overwrite = "yes"
marginBottom = ".2"
marginLeft = ".4"
marginRight = ".4"
marginTop = ".2">
<style type="text/css">@import "pdf.css";</style>
QUERY RESULTS TABLES AND CODING HERE ETC
</cfdocument>