我有一个 pdf 文件,在我的电子阅读器上几乎无法阅读。 页边距较大,导致文本较小。 文本颜色是浅灰色,在我的设备屏幕上渲染得非常微弱。
我想我可以通过更改使文件更清晰:
0 0 612 792
到 60 70 525 725
0.314 0.314 0.314 rg
到 0 0 0 rg
我可以在 pdfbox 调试器应用程序中清楚地看到这些部分。不幸的是,它给了我一个只读视图。有没有办法加载 pdf 并将其所有部分复制到新的 pdf,同时仅更改 CropBox 和文本颜色?
% curl -O https://repo1.maven.org/maven2/org/apache/pdfbox/debugger-app/2.0.25/debugger-app-2.0.25.jar
% java -jar debugger-app-2.0.25.jar
这个肮脏的黑客似乎有效,但我觉得必须有更好的方法。
解码pdf
% curl -O https://repo1.maven.org/maven2/org/apache/pdfbox/pdfbox-app/2.0.25/pdfbox-app-2.0.25.jar
% java -jar pdfbox-app-2.0.25.jar WriteDecodedDoc input.pdf decoded.pdf
decoded.pdf
现在包含与原始 pdf 相同的内容,但不再应用 FlatDecode。这意味着内容“清晰”。
使用 hexfiend 编辑已解码的.pdf
文件现在非常大...因此在预览中打开它并导出为 pdf。可悲的是,这种重新压缩的方式会丢弃目录。
我发现了krop,一个简单的图形工具,用于在 Linux 上裁剪 PDF 文件的页面。这比在十六进制编辑器中编辑文件要容易得多。但不会改变文本颜色。