在试图找到合并现有PDF文件和表单的方法时,我遇到了Sid Steward的PDFTK,然后找到了Andrew的pdftk类(code.google.com/p/ PDFTK-php /;PDFTK)。这个想法看起来很简单,但是当我在我的Windows2003Server和Windows虚拟PC上尝试使用fill_form生成的FDF表单Andrew的示例代码时,我也遇到了同样的错误。我继续修改Andrew的代码,看看它运行的是什么命令行。然后将其输入命令提示符窗口以查看错误。
命令行如下所示: pdftk example.pdf fill_form fdf1b44.tmp输出test.pdf flatten (PDFTK位于我的系统路径中,所有其他文件都位于当前目录中),example.pdf生成为0KB文件,并弹出以下错误:
未处理的Java异常:
java.io.CharConversionException
at 0x0056175e (Unknown Source)
at 0x00561c52 (Unknown Source)
at 0x00561d03 (Unknown Source)
at 0x0057692d (Unknown Source)
at 0x0055f64d (Unknown Source)
at 0x006bc0ad (Unknown Source)
at 0x006994e0 (Unknown Source)
at 0x00567a96 (Unknown Source)
at 0x0056e8f2 (Unknown Source)
at 0x0056e92c (Unknown Source)
at 0x00445fa6 (Unknown Source)
at 0x0048b15e (Unknown Source)
at 0x0048b5b8 (Unknown Source)
at 0x0048c238 (Unknown Source)
at 0x0046c81f (Unknown Source)
at 0x00469301 (Unknown Source)
at 0x004666a6 (Unknown Source)对于Windows虚拟pc和Windows2003Server,结果是相同的。我在这个问题上几乎没有发现,只有一个条目表明,Sid使用gcc版本来编译pdftk,它有一些糟糕的java字符支持。我下载了Sid的源文件来查看,但它确实超出了我的知识范围。
发布于 2010-08-24 21:23:58
在安德鲁的网站上找到了亚当·德福的答案。显然,供下载的PDFTK副本有一个损坏的example.pdf文件版本。所以不是只有我一个人在拍我的额头想弄清楚。见Adam的答案(http://www.andrewheiss.com/blog/2009/07/29/installing-pdftk-php/)如下:
亚当·德福沃05/10/2010 10:24下午10:24回复乔什
http://pdftk-php.andrewheiss.com/example/exampl...
在安德鲁的站点上使用这个example.pdf,而不是在GitHub上使用这个版本。在过去的两个小时里,我一直在努力弄清楚为什么它不起作用。正如安德鲁所暗示的,嵌入式Mac字体是我的宿敌。
使用PDF格式,它应该对你有用。
发布于 2010-09-22 10:32:58
谢谢蜘蛛,你让我今天很开心。在我的Windows测试环境中,您的解决方案非常适合我。以下是指向example.pdf的完整链接,可点击:
http://pdftk-php.andrewheiss.com/example/example.pdf
我也把它作为一个问题添加到pdftk-php github页面。
发布于 2021-04-14 22:50:11
使用PDFtk和我自己的PHP代码(不是pdftk-php)进行FDF/PDF合并时,我遇到了同样的错误。我花了两天时间想办法解决这个问题。我修改了我的代码,一个一个地合并这些字段,并报告给出导致错误的特定字段--因为其中一些字段工作得很好,而另一些字段则没有。在检查导致错误的字段与没有错误的字段之间的差异时,我意识到导致错误的字段设置为OpenSans字体。工作的田地被设置为古罗马时代。一旦我将所有字段更改为使用Times而不是OpenSans,PDFtk就停止抛出错误。我希望有一天我的两天撞头能帮到一个人。
https://stackoverflow.com/questions/3558192
复制相似问题