<cfpdf>合并的限制是什么?

时间:2016-12-28 15:30:00

标签: pdf merge coldfusion coldfusion-10 cfpdf

我在编写和合并数千个PDF文件到单个PDF文件时遇到了性能问题。每个PDF文件大约是1.76MB。我的JVM堆大小默认为512。我已将JAVA堆大小增加到2048 MB。以下代码为1000 pdf编写pdf表单字段,并将1000 pdf合并为单个。超过1000个pdfs它会在coldfusion-out.log文件中抛出以下错误日志。

2016年12月30日18:43:12 PM信息[scheduler-1] - 运行客户端存储清除

我该如何解决这个问题?

我使用以下代码编写一些pdf字段并合并为单个pdf:

<cfset outputFilePath = "PDF_#dateformat(now(),"dd_mm_yyyy")#">
<cfloop from="1" to="1500" index="i">
    <cfset RandToken = createUUID()>
    <cfset inputFileName = "Test-cert.pdf">
    <cfif directoryExists("C:\ColdFusion10\cfusion\wwwroot\outputPDF\#outputFilePath#") EQ false>       
        <cfdirectory action="create" directory="C:\ColdFusion10\cfusion\wwwroot\outputPDF\#outputFilePath#">   
    </cfif>
    <cfset OutputFile = "outputPDF/#outputFilePath#/#RandToken#_outputPDF.pdf">
    <cfpdfform source="#inputFileName#" destination="#OutputFile#" action="populate">
        <cfloop from="1" to="10" index="CurrentField">
            <cfset FormField = "BirthDate">
            <cfset FormValue = "12/24/1987">
            <cfpdfformparam name="#FormField#" value="#FormValue#" />   
        </cfloop>   
        <cfloop from="1" to="3" index="Fieldvalue">
            <cfset FormField = "fullName">
            <cfset WorkingText = "Sathish#Fieldvalue#">
            <cfpdfformparam name="#FormField#" value="#WorkingText#" />
        </cfloop>
    </cfpdfform>
    <cfpdf action="write" flatten="yes" overwrite="yes" source="#OutputFile#" destination="#OutputFile#">   
</cfloop>

<cfpdf action="merge"  directory="C:\ColdFusion10\cfusion\wwwroot\outputPDF\#outputFilePath#" order="name" ascending="yes" stoponerror="false" overwrite="yes" destination="mergedPDf.pdf" />

<cfdirectory action="list" directory="C:\ColdFusion10\cfusion\wwwroot\outputPDF\#outputFilePath#" recurse="yes" name="resultOfZip"/>
<cfloop query="resultOfZip">
    <cffile action="delete" file="C:\ColdFusion10\cfusion\wwwroot\outputPDF\#outputFilePath#\#resultOfZip.NAME#">
</cfloop>
<cfheader name="Content-Disposition" value='inline;filename="mergedPDf.pdf"'>
<cfcontent type="application/pdf" file="mergedPDf.pdf" deleteFile="yes">

我在以下配置机器上运行以上代码: Windows 10,RAM 6 GB,CF10 任何人都可以建议我如何将所有文件合并为一个pdf?

0 个答案:

没有答案