是否可以生成不可编辑的 PDF?
目前,我生成的文档可以使用pdflatexAdobe Acrobat X Pro 等应用程序进行编辑。
我有一些无法用 Acrobat 编辑的 PDF 文档,那么,我如何用 LaTeX 重现它?
小智 11
该PDF工具包是一个免费的,命令行应用程序提供此功能。您设置“所有者密码”( owner_pw <password>) 并指定文档允许的属性。这是一个使用 128 位强度加密文档并仅允许打印的示例(来自Pdftk 示例页面):
pdftk mydoc.pdf 输出 mydoc.128.pdf owner_pw foopass 允许打印
它在 Adobe 中生成以下文档属性:

也可以设置其他权限(来自Pdftk 手册页):
[ 允许 < 权限 > ]
仅当指定了加密强度或提供了所有者或用户密码时,权限才会应用于输出 PDF。如果未指定权限,则默认为“无”,这意味着以下所有功能都被禁用。
权限部分可以包括以下一项或多项功能:
- 印刷 – 高品质印刷
- DegradedPrinting – 低质量打印
- ModifyContents – 也允许组装
- 集会
- CopyContents – 还允许使用屏幕阅读器
- 屏幕阅读器
- ModifyAnnotations – 也允许 FillIn
- 填写
- AllFeatures – 允许用户执行上述所有操作和高质量打印。
事实证明,这些安全功能非常依赖于查看者,并且有很多方法可以解决。
yo'*_*yo' 10
我将添加这个作为答案,因为它以某种方式回答了这个问题,而且它很长而且有点复杂。简短的回答是:不,这是不可能的。一旦您可以在屏幕上阅读 PDF,就意味着这里有所有信息,并且可以编辑 PDF。Adobe 程序当然不提供此类功能。但如果您希望 PDF 可编辑,您始终可以使用 ImageMagick:
convert -density 600 myfile.pdf myfile.png
Run Code Online (Sandbox Code Playgroud)
之后,由于质量非常高,任何足够好的 OCR 都能够将其转换回文本。当然还有其他的可能性。正如其他人所提到的,您可以将 PDF 解码为 PS(这是可能的,因为在某种程度上,这是 PDF 阅读器必须执行的操作)然后再转换回来,您就拥有了一个可编辑的 PDF 文件。
结论:您可以保护 PDF 免受“普通”用户的编辑,但您无法保护它免受知道自己在做什么的人的编辑。
| 归档时间: |
|
| 查看次数: |
15489 次 |
| 最近记录: |