2014-10-30 105 views
1

我知道coldfusion有广泛的pdf支持,但我不确定这是否可能。 我被给了一份pdf格式的表单,并通知它,这样它就可以在网上填写,数据被捕获,表格可以打印。coldfusion显示pdf

很显然,我可以创建一个HTML页面,看起来像文档,保存所有,产生的填充PDF表单等

或者,我想我可以显示PDF,让他们填写它,然后抓住表单数据。我不完全相信我可以做到这一点,因为我需要检测他们什么时候完成填充。

但是我认为这样做会很好,如果我可以这样做的话 - 在网页上显示嵌入的pdf,让它们填写并打印出来,然后在完成时捕获所有内容。我正在浏览CF文档(cfpdf cfhttp等),但没有准确找到我需要的内容。这是一个选项吗?

回答

1

您可以使用cfpdfform标记或作为HTTP Post从PDF中提取数据。这里的a link关于如何做到这一点的文档,但这取决于你如何设置PDF本身。您可以编辑您的PDF表单,以实际提交表单数据到指定的CF页面。它到达页面中的一个绑定到表单名称的结构(即#form.form1.Fields.blah#等)。转储它来破译它(这是一种令人费解的)所以你可以打印并从PDF内提交。

第二种方法是将PDF本身作为文件提交。在这种情况下,您使用cfpdform标签 - 没有很好的记录或广泛使用。上面的链接都轻描淡写地介绍了这两种方法。祝你好运!

+0

我在想,根据你的回应,对我来说开始使用html并填充表单基于此,考虑到我还需要将数据保存到数据库。 – 2014-10-30 14:45:00

+0

@PatrickSchomburg是的。有一个人想念这个话题,就是以这种方式使用PDF并不是真正的CF事物,因为它是一个PDF设计。如果你正在与一个生命周期设计师密切合作,这可以很好地工作,否则很多令人沮丧的试验和错误可能永远无法满足你的需求。 :) – 2014-10-30 14:47:01

+0

当然,如果您知道PDF文档的结构,则可以使用cfpdfform来填充数据 - 将表单数据从HTML中提取出来,然后(action =“populate”)将其推送到表单中。但是,再次,PDF必须被破译和允许允许它(我认为)。并不总是可能的。 – 2014-10-30 14:49:43

0

我们可以证明使用cfheadercfdocument标签页的PDF文件。我们只能使用以下示例代码在网页上显示PDF。

<cfsavecontent name="pdfcontent"> 

//Here what you need to show the pdf 

</cfsavecontent> 

<cfheader name="Content-Disposition" value="filename=Mydocument.pdf"> 
    <cfdocument format="pdf" orientation = "landscape" bookmark="Yes" marginleft=".25" marginright=".25" marginTop = ".25" marginbottom=".75" scale="90"> 
      <cfoutput> #pdfcontent# </cfoutput> 
    </cfdocument>