我正在使用 ColdFusion 8 和对象来创建一个 xml 文档,然后将数据写入我们 Intranet 上现有 PDF 文件中的字段。问题是我需要在新的浏览器窗口中打开 PDF,而不是在同一个浏览器窗口中打开,这就是现在发生的情况。
是否有任何其他信息可以与“destination=”标签一起传递以强制 PDF 表单在新的浏览器窗口中打开?
提前感谢所有回复
我正在使用 ColdFusion 8 和对象来创建一个 xml 文档,然后将数据写入我们 Intranet 上现有 PDF 文件中的字段。问题是我需要在新的浏览器窗口中打开 PDF,而不是在同一个浏览器窗口中打开,这就是现在发生的情况。
是否有任何其他信息可以与“destination=”标签一起传递以强制 PDF 表单在新的浏览器窗口中打开?
提前感谢所有回复
将来提供代码示例将不胜感激,并应加快解决速度。但是,如果我对您的理解正确,并且根据您的喜好,那么以下解决方案之一就足够了。
ColdFusion(服务器端)
如果您没有将新填充的 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");
我一直在寻找答案,同事引导我找到这个简单的解决方案。这将在新的网络浏览器窗口中打开一个 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">
显示PDF文件