使用ColdFusion cfpdfform在新的浏览器窗口中打开PDF

时间:2011-09-10 01:11:03

标签: pdf coldfusion cfpdfform

我正在使用ColdFusion 8和对象创建一个xml文档,然后将数据写入我们Intranet上现有PDF文件中的字段。问题是我需要在新的浏览器窗口中打开PDF,而不是同一个浏览器窗口,这就是现在正在发生的事情。

我是否可以传递“destination =”标记以强制PDF表单在新的浏览器窗口中打开?

提前致谢所有回复

2 个答案:

答案 0 :(得分:4)

将来非常感谢提供代码示例,并应加快解决。但是,如果我正确理解您,并且根据您的偏好,那么以下解决方案之一就足够了。

ColdFusion(服务器端)

如果您 NOT 将新填充的PDF写入磁盘:

<cfpdf name="variableName" />
<cfheader name="Content-Disposition" value="attachment; filename=filename.pdf" />
<cfcontent type="application/pdf" variable="#toBinary(variableName)#" />

如果将新填充的PDF写入磁盘:

<cfpdf action="write" destination="c:\full\path\to\filename.pdf" />
<cfheader name="Content-Disposition" value="attachment; filename=filename.pdf" />
<cfcontent type="application/pdf" file="c:\full\path\to\filename.pdf" />

HTML(客户端)

<a href="/relative/url/to/pdf/populate/template.cfm" target="_blank">Anchor Text</a>

JavaScript(客户端)

window.open("/relative/url/to/pdf/populate/template.cfm", "windowName");

答案 1 :(得分:0)

我正在寻找答案,同事引导我走向这个简单的解决方案。这将在新的Web浏览器窗口中打开pdf。

<a href="showPdf.cfm?filePath=#filePath#" target="_blank">test.pdf</a>

index.cfm(调用页面)

<cfheader name="Content-disposition" value="inline;filename=test.pdf">

<CFCONTENT TYPE="application/pdf" FILE="#url.filePath#" DELETEFILE="No">

showPdf.cfm