我正在尝试从用户输入动态生成 PDF,我基本上打印用户输入并将其覆盖在我没有创建的现有 PDF 上。
它有效,但有一个主要例外。Adobe Reader 在 Windows 或 Linux 上无法正确阅读。我手机上的 QuickOffice 也不读取它。所以我想我会追踪我创建文件的路径 -
1 -
使用 LZW 编码的 Adobe Distiller 制作的背景 PDF 1.2的原始 PDF 。
我没有做这个。
2 -
使用 Ghostscript 制作的背景PDF 1.4 的 PDF。
我在上面使用了 pdf2ps 然后 ps2pdf 来剥离 LZW,以便 reportlab 和 pyPDF 库能够识别它。请注意,此文件在 Adobe Reader 中看起来“模糊”,就像扫描错误,但在其他阅读器中看起来不错。
3 -用户输入文本的 PDF 格式,可与
用户输入的 Reportlab 制作的背景 PDF 1.3 相结合。在我尝试过的每个阅读器中都可以正常打开并且看起来不错。
4 -
使用 PyPDF在 2 和 3 上的功能完成的 PDF PDF 1.3。mergePage()
无法打开:
Adobe Reader for Windows
Adobe Reader for Linux
QuickOffice for Android
在以下位置完美打开:
Google Docs' PDF 查看器 on the web
evince for linux
ghostscript viewer for linux Foxit reader for Windows
Preview for Mac
是否有我应该知道的已知问题?我不确切知道“flate”是什么,但从互联网上我了解到它是 LZW 的某种开源替代品,用于 PDF 压缩?这会导致我的问题吗?如果是这样,是否有任何库可以用来修复代码中的原因?