首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用pdf-form gem填写Ruby中的Pdf表单

使用pdf-form gem填写Ruby中的Pdf表单
EN

Stack Overflow用户
提问于 2017-03-28 14:55:20
回答 2查看 1.7K关注 0票数 0

我想以编程的方式使用pdf格式宝石填充pdf。

我能够使用以下代码读取这些字段:

代码语言:javascript
复制
require 'pdf_forms'
pdftk = PdfForms.new('/usr/local/bin/pdftk')
fields = pdftk.get_fields('*/Desktop/sample_pdf.pdf')
for f in fields
  print f.to_s
end

但是当我试图用provide填充pdf时,我只创建了一个空的,而不是可操作的Pdf。

代码语言:javascript
复制
pdftk.fill_form '/path/to/form.pdf', 'target.pdf', ['Value Name'] => 'Value to be inserted'

有人知道可行的解决方案吗?

提前谢谢!

其他信息:

  • pdf的字段如下:名称、地址、Dropdown1、Dropdown2、Dropdown3、Check Box4、Check Box1、Check Box3、Check Box2、Text5、Button7、Text6、Group6、%
  • 我试过只填一个字段:

pdftk.fill_form 'sample_pdf.pdf','sample_pdf_filled.pdf',{“要插入的名称”=>值“}

结果:我有一个pdf "sample_pdf_filled.pdf",我不能打开,因为它是空的。我以为我的问题是填写表格,但似乎,pdf没有被正确创建。

注意:我正在开发一个mac (unix)。

有谁有解决办法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-28 15:37:47

方法#fill_form的定义如下:

代码语言:javascript
复制
 def fill_form(template, destination, data = {}, fill_options = {})

你的例子会产生这样的结果:

代码语言:javascript
复制
irb(main):001:0> { ['Value Name'] => 'Value to be inserted' }                                                                                   
=> {["Value Name"]=>"Value to be inserted"}      

数据应该是哈希。如果您想要指定一个带有空格的键,可以像这样使用它::'Value Name'

代码语言:javascript
复制
irb(main):002:0> { :'Value Name' => 'Value to be inserted' }                                                                                    
=> {:"Value Name"=>"Value to be inserted"}  
票数 1
EN

Stack Overflow用户

发布于 2017-03-30 11:13:10

我找到了一个解决方案--对于所有MAC OS X 10.11 El Capitan用户:

OSX10.11上的PDFtk服务器

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43072950

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档