为了账号安全,请及时绑定邮箱和手机立即绑定

如何验证 PDF?

如何验证 PDF?

PHP
30秒到达战场 2022-12-23 16:13:32
我有一个 PDF 文件,用 php(使用 tFDF)生成,可以在 chrome、firefox 和 safari 中正常打开。但不适用于 Edge 或 Adobe acrobat reader。Edge 显示一个白色页面,Adobe 报告“此页面上存在错误。Acrobat 可能无法正确显示该页面”。是否可以检索该错误可能是什么?PDF 文件使用了一些可能是问题所在的嵌入字体,但我不确定。
查看完整描述

1 回答

?
守候你守候我

TA贡献1802条经验 获得超10个赞

您可以像这样使用 Ghostscript(路径纯属推测):


# On Linux

gs -o /dev/null -sDEVICE=nullpage -dBATCH -dNOPAUSE /home/ebaars/sample.pdf


# On Windows, using gswin32


gswin32 -o nul -sDEVICE=nullpage -dBATCH -dNOPAUSE C:\Users\Eric\Desktop\Sample.pdf

或者您可以使用 iText(即pdftk)并要求(例如)压缩文件并将其重新解析为另一个文件。同时,图书馆将进行检查。


您还可以查看其他答案。


更新

这个错误,“'0,686 不是一个运算符”——这意味着它在它期望一个运算符的地方找到了一个数字。我假设“tFDF”是指“tcPDF”?我怀疑 - 我可能错了 - 我们正在查看i18n 错误,其中 2/3 之类的数字,应该是“0.66666”,由带有小数点逗号的服务器代码表示,使其成为 PDF解释器相信一个列表(“0,666”)。


可以肯定的是,我要么需要 PDF - 我会用 iText 解压缩它,然后将 0,686 等重写为 0.686 等,然后看看这种方式是否有效 - 或者生成文件的确切 PHP 代码,加上服务器的配置(以验证语言环境设置是否合适)。


我的猜测是它是一个库错误。检查软件版本,以防有可能更新代码并可能以这种方式解决问题。


我遇到过这个错误好几次,因为我来自意大利,“一千零一分”在这里写成“1.000,01”或“1'000,01”而不是“1000.01”。


查看完整回答
反对 回复 2022-12-23
  • 1 回答
  • 0 关注
  • 114 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信