我pdftk用来修复损坏的PDF文件中的一些失败,但我遇到了另一个问题,这个问题没有得到解决pdftk(或者至少我不知道该怎么做).
我有基于TrueType字体的文本的PDF文件,但在PDF创建过程中没有嵌入字体.现在我想将所需的字体嵌入到现有文件中.
是否有一个命令行工具(如pdftk)通过提供TTF文件路径来嵌入丢失的字体?
我有一个PHP应用程序,从数据库调用填充表单.目前我正在使用PDFtk将它放在一起,我能够运行许多PDFtk命令而没有问题,我目前正在命令行中运行所需的命令.
我的电话目前是这样的:
pdftk /var/www/html/CSR/template/job_card.pdf fill_form /var/www/html/CSR/template/wwwwu7mMH.fdf output /var/www/html/CSR/template/filled4.pdf
Run Code Online (Sandbox Code Playgroud)
多次运行这个确切的调用有时会产生此错误:
Unhandled Java Exception in create_output():
java.lang.ClassCastException: pdftk.com.lowagie.text.pdf.PdfNull cannot be cast to pdftk.com.lowagie.text.pdf.PdfDictionary
at pdftk.com.lowagie.text.pdf.FdfReader.readFields(pdftk)
at pdftk.com.lowagie.text.pdf.FdfReader.readPdf(pdftk)
at pdftk.com.lowagie.text.pdf.PdfReader.<init>(pdftk)
at pdftk.com.lowagie.text.pdf.PdfReader.<init>(pdftk)
at pdftk.com.lowagie.text.pdf.FdfReader.<init>(pdftk)
Run Code Online (Sandbox Code Playgroud)
有时这个错误:
Unhandled Java Exception in create_output():
Unhandled Java Exception in main():
java.lang.NullPointerException
at gnu.gcj.runtime.NameFinder.lookup(libgcj.so.10)
at java.lang.Throwable.getStackTrace(libgcj.so.10)
at java.lang.Throwable.stackTraceString(libgcj.so.10)
at java.lang.Throwable.printStackTrace(libgcj.so.10)
at java.lang.Throwable.printStackTrace(libgcj.so.10)
Run Code Online (Sandbox Code Playgroud)
错误消息交替显示,但命令永远不会起作用,表单永远不会填充.正如我所说,PDFtk与其他命令一起使用,我已经能够生成加密的PDF并成功运行固定的命令.
我的问题是导致此错误的原因以及如何解决?