我的情景:
现在我需要将这些文件组合并展平.pdftk在php中轻松完成工作:
exec("pdftk template.pdf fill_form fieldData.xfdf output flatFile.pdf flatten");
Run Code Online (Sandbox Code Playgroud)
不幸的是,这不支持完全的utf-8.例如:西里尔字母和希腊字母被扰乱.我使用了Arial,带有unicode字符集.
编辑1:由于这个问题已经超过9个月没有解决,我决定为此开始赏金.如果有选择,以赞助某项功能或在PDFTK一个bug修正,我会很高兴捐赠.
编辑2:我不再在这个项目上工作,所以我无法验证新的答案.如果有人有类似的问题,我很高兴,如果他们能回应我的意见.
我们正在努力实现的目标:
使用drupal webform submition数据作为源来填充PDF表单并将其提供给用户,展平以进行打印.我们正在尝试在Drupal 6上以及稍后在Drupal 7上部署它.站点是部署在CentOS VPS上的大型D6站点.我们正在将它转移到D7.
链接:
我们的问题:
无论我们尝试什么,我们都无法将某些Unicode(utf-8)字符插入到PDF中.
具体来说,这些不起作用:č,đ,ć
这些工作:š,ž
注意:这必须起作用,因为这些字符在斯洛文尼亚语的名字和姓氏中很常见,而这个pdf是斯洛文尼亚合同的打印输出.
我们尝试过:
我们首先使用了我们的sysadmin从源代码构建的PDFTK.我们尝试了1.41和1.41.他找到了两个版本的包,我们对它们进行了测试.没有用.我们分析了模块并使用了带有条带化示例的相同命令行函数.它产生了相同的结果.我们尝试在从Mac转换的Mac上生成的PDF,而不是使用Adobe Acrobat Pro添加的字段.我们尝试在Linux Mint上使用LibreOffice创建的PDF.两者都产生了相同的结果.这个问题已在CentOS vps,我们的系统管理员的CentOS虚拟盒安装和ubuntu 10.04 devbox以及2个D6 vanilla安装,1个D7 vanilla安装和生产D6安装上复制.我们还尝试了fillpdf模块给出的第二个选项:java/tomcat bridge(更多这里).这是在ubuntu 10.04 devbox上尝试的,它也没有用.我们还尝试了提供的软件即服务PDFTK服务FillPDF服务,它也产生了相同的结果.
什么想法可能是错的?任何想法如何完成(即使使用其他系统,服务,自定义代码等)?
当我使用 pdftk 展平 pdf 文档时,西里尔字符无法正确显示。
? ? ?转换为а о Ð
我尝试更改 pdf 上的编码,通过数据传递utf8_decode()- 仅适用于诸如ä ø,转换编码等的字母mb_convert_encoding()。
有没有人遇到过这个问题?
我正在尝试使用 PDFTk 填充 pdf 文档。脚本工作正常,它填写表单中的输入,但我没有得到特殊字符 [波兰字符集:UTF-8 或 ISO-8859-2]。
脚本:https : //github.com/mikehaertl/php-pdftk
奇怪的是,当我点击字段时,生成的 pdf 实际上有波兰语字符。
点击前:
点击字段后:
默认编码设置为 UTF-8。问题是 PDFTk 不能在标准 ASCII 之外使用带有 FDF 表单填充的字符。它不允许多字节字符。
我做了什么:
更新 (25.03.2016):发现 pdf 文档在某些计算机上运行良好。有些人有波兰语字符,而其他人则没有。我们所有人都有正确的字体(带有波兰语字符集)。我使用默认的 Arial 或 Times New Roman。字体也嵌入到该文件中。
有任何想法吗?