生成不可编辑的 PDF

生成不可编辑的 PDF

是否有可能生成不可编辑的 PDF?

目前,我使用的生成的文档pdflatex可以使用 Adob​​e Acrobat X Pro 等应用程序进行编辑。

我有一些 PDF 文档无法用 Acrobat 编辑,那么,如何使用 LaTeX 重现这种情况?

答案1

PDF 工具包是一个提供此功能的免费命令行应用程序。您可以设置“所有者密码”(owner_pw <password>)并指定允许文档的属性。以下是一个例子(来自Pdftk 示例页面) 使用 128 位强度加密文档,并且仅允许打印:

pdftk mydoc.pdf 输出 mydoc.128.pdf Owner_pw foopass 允许打印

它在 Adob​​e 中产生以下文档属性:

在此处输入图片描述

还可以设置其他权限(从Pdftk 手册页):

[ 允许 < 权限 > ]

仅当指定了加密强度或给出了所有者或用户密码时,权限才会应用于输出 PDF。如果未指定权限,则默认为“无”,这意味着以下所有功能均被禁用。

权限部分可以包括以下一个或多个功能:

  • 印刷 – 顶级品质印刷
  • 打印质量下降 – 打印质量较低
  • 修改内容 – 还允许组装
  • 集会
  • CopyContents – 还允许使用屏幕阅读器
  • 屏幕阅读器
  • ModifyAnnotations – 还允许 FillIn
  • 填写
  • AllFeatures – 允许用户执行上述所有操作并实现最高质量的打印。

事实证明,这些安全功能很大程度上依赖于观众,而且有办法绕过它。

答案2

我将添加此内容作为答案,因为它以某种方式回答了问题,而且很长且有点复杂。简短的回答是:不,这是不可能的。一旦您可以在屏幕上阅读 PDF,就意味着其中包含所有信息并且可以编辑 PDF。Adobe 程序当然不提供此类功能。但是,如果您希望 PDF 可编辑,您可以随时使用 ImageMagick:

convert -density 600 myfile.pdf myfile.png

之后,由于质量非常高,任何足够好的 OCR 都能够将其转换回文本。当然还有其他可能性。正如其他人提到的,您可以将 PDF 解码为 PS(这是可能的,因为在某种程度上,这是 PDF 阅读器必须做的事情),然后再转换回来,这样您就得到了一个可编辑的 PDF 文件。

结论:您可以保护 PDF 不被“普通”用户编辑,但您无法保护它不被知道自己在做什么的人编辑。

相关内容