为何Evince无法打开银行PDF表单,Adobe及LibreOffice却可正常打开?
解决Evince无法正常打开银行PDF表单的问题
这种情况我之前也碰到过,多半是Evince对某些带复杂交互表单的PDF兼容性不足——毕竟不同阅读器的PDF渲染引擎对特殊格式的支持差异挺大的。给你几个可行的解决办法:
一、尝试更新Evince到最新可用版本
Ubuntu 17.10虽然已经停止官方支持,但可以先试试通过系统源更新Evince:
sudo apt update && sudo apt install --only-upgrade evince
如果提示没有可用更新,那官方源大概率已经没有后续维护了,可以直接试试下面的方案。
二、调整Evince的渲染后端设置
有时候切换渲染引擎能解决表单解析问题:
- 打开Evince,点击顶部菜单栏的 编辑 → 首选项
- 切换到 查看 标签页
- 将 渲染后端 在“Poppler”和“Cairo”之间切换(比如当前是Poppler就改成Cairo)
- 重启Evince后重新打开PDF文件试试
三、设置兼容阅读器为默认程序
既然Adobe PDF Reader和LibreOffice已经能正常打开,直接把它们设为PDF默认打开程序更省心:
- 右键点击目标PDF文件,选择 属性
- 切换到 打开方式 标签页
- 选中Adobe PDF Reader或LibreOffice Draw,点击 设为默认
之后打开这类PDF就会自动用能正常工作的程序了。
四、用Ghostscript修复PDF文件
部分PDF可能存在格式瑕疵导致Evince无法解析,你可以用Ghostscript工具修复:
在终端执行以下命令(把problematic-file.pdf换成你的银行PDF文件名):
gs -o fixed-file.pdf -sDEVICE=pdfwrite -dPDFSETTINGS=/original problematic-file.pdf
生成的fixed-file.pdf再用Evince打开试试效果。
内容的提问来源于stack exchange,提问作者Dr. Mike




