如何从PDF文件中删除水印?


41

我认为这将是一个简单的任务,但结果却相反。

水印是每个页面上非常相同(重叠但透明)的图像。我使用PDFCreator 0.9.8自己创建了PDF文件(因此这里没有版权问题)。

我已经尝试过我朋友的Adobe Acrobat Pro,但是没有用。它尝试删除它,但是不能删除。我试图删除页眉/页脚等,但是水印不会消失。

如何删除水印?


2
PDF是一种输出格式,就像电子打印页面一样。它并不是要进行编辑的,并且在大多数情况下,如果不将页面导出到图像并进行水印处理,则您将无法执行所要求的操作。
mk12 2012年

对于所有堆叠交换网站,购物建议都不是主题。为了防止这一问题的结束,我建议将其改为一个怎么样的问题,而不是哪个问题
Canadian Luke REINSTATE MONICA 2012年

3
看来您只需要使用PDFCreator 0.9.8并设置选项,这样就不会在每个页面上添加水印。我认为这个问题是因为您没有原始来源。
拉姆猎犬,2012年

Answers:


73

对于基于图像的水印,有几种工具可以自动将其删除。例如:

所有这些都是可以免费试用的,但是需要许可证才能实际产生所需的输出。

但是,此特定PDF文件(OP通过电子邮件发送给我的水印)并不是在所有页面上重复的单个图像。事实证明,PDFCreator将其(几乎逐像素)硬编码为其中的每一个。这使水印的去除变得更加困难(并导致PDF文件膨胀)。

由于水印实际上是由许多微小的图像组成的,因此您可以使用PDF编辑器(例如Foxit Advanced PDF Editor)将其删除,只需选择它们并按即可Delete。不幸的是,您必须为每个页面重复此操作。

较省时间的解决方案是以编程方式删除水印。我们需要:

脚步

  1. 下载Pdftk并将pdftk.exelibiconv2.dll解压缩到%windir%\ System32,该目录位于您选择的路径或任何其他位置。

  2. 下载并安装Notepad ++。

  3. 通常使用DEFLATE算法压缩PDF流。这样可以节省空间,但会使PDF的源变得难以辨认。

    命令

    pdftk original.pdf output uncompressed.pdf uncompress
    

    解压缩所有流,因此可以通过文本编辑器对其进行修改。

  4. 用记事本++ 打开uncompressed.pdf,以显示水印的结构。

    在这种情况下,每个页面都以块开头

    q 9 0 0 9 2997 4118.67 cm
    BI
    /CS/RGB
    /W 1
    /H 1
    /BPC 8
    ID Ÿ®¼
    EI Q
    

    差不多有4,000个街区 此特定块仅设置/W 1 /H 1水印像素中的一个()。

    向下滚动直到模式更改表明水印流的长度为95,906字节(计算换行符)。在PDF文件的每一页上重复完全相同的流。

  5. Ctrl+ H并设置以下内容:

    Find:               q 9 0 0 9 2997 4118\.67 cm.{95881}
    Replace:            (blank)
    Match case:         checked
    Wrap around:        checked
    Regular expression: selected
    . matches newline:  checked
    

    正则表达式q 9 0 0 9 2997 4118\.67 cm.{95881}与上面的块(q 9 0 0 9 2997 4118.67 cm)的第一行以及后面的所有95,881个字符(即水印流)匹配。

    单击全部替换将其从PDF文件的所有页面中删除。

  6. 水印现在已被删除,但是PDF文件有错误(流的长度不正确)并且未压缩。

    命令

    pdftk uncompressed.pdf output nowatermark.pdf compress
    

    照顾两者。

  7. 不再需要uncompressed.pdf。您可以删除它。

结果是没有水印的相同PDF(大小约为一半)。


4
我发现另一个有用的技巧:我很难找出与PDF中水印相对应的块。因此,我要做的只是从PDF中提取单个页面,理想情况下是仅包含水印而不包含其他内容的页面。仅从这一页,应该更容易找出与水印相对应的块。然后返回并为原始PDF进行处理。
肯尼·LJ,2015年

1
哇,这是互联网上的第一个地方,我找到了管理此问题的好方法。您建议阅读关于容器格式的任何地方吗?
ConstantineK

2
@hobs IIRC,我阅读了一部分官方PDF参考,以写出此答案。
丹尼斯

1
谢谢@Dennis,我已经给了你一个赞,但这似乎是最好的规范资料。通过一些查找/替换以及一些其他的压缩试验和错误运行,我能够完成所需的工作。巨大的帮助!
ConstantineK

7
取而代之的是,pdftk您还可以使用qpdf 解压和压缩pdf文件。指令:qpdf --stream-data=uncompress original.pdf uncompressed.pdfqpdf --stream-data=compress uncompressed.pdf nowatermark.pdf
David Schuler

6

听起来水印实际上是.PDF内图像的一部分,而不是您用来显示.PDF的任何在其上呈现的单独图像。如果不从.PDF中提取图像,通过图像编辑器运行它们,然后手动重建.PDF,则可能无法删除水印。


4

对于文本水印,编辑PostScript版本会容易得多:

$ pdftops document.pdf

编辑document.ps,然后通过转换回PDF

$ ps2pdf document.ps


在Linux上,请注意pdftopspdf2ps有所不同。使用第一个命令,而不是第二个。
卡米尔·古德塞内

1
如果您知道水印文字是什么,那么这里有一条线。pdftops in.pdf - | sed 's/WATERMARK//' | ps2pdf - out.pdf
卡米尔·古德塞内

1

该图章的工件是可以在Adobe Acrobat Pro中删除它的图章,但是由于流对象使它保持持久性,因此可以在鼠标移动时重新生成图章。

如果您尝试编辑pdf来源-这很棘手,则文件可能会损坏。

如果戳记是流,我们可以通过断开计算机与网络的连接来中断它。

然后,使用Adobe Acrobat Pro,选择我的注释之一,单击鼠标右键以弹出窗口,然后选择“显示评论列表”。

从列表中选择有害的水印/邮票,单击鼠标右键以获取弹出菜单,然后选择“删除”。在发生粘贴的每个页面上执行此操作。

用另一个名称保存文件。我的应用程序崩溃了,但是在保存文件之前没有崩溃!

打开新的文件,小得多;请注意,所有水印/邮票均为奇闻趣事。

以我为例,我3页文档的文件大小从300 kb缩小到令人印象深刻的60 kb。所有原始数据和注释均保持不变-除去水印。

〜打猎不错:o)


1

使用zamzar将文档转换为.rtf文件。转换后,水印会自动消失。 请注意: -如果文档中包含文字材料,它会完美工作。一直以来都有很大的帮助。。(Mac用户)


这不适用于我尝试过的PDF。
肯尼·LJ,2015年

1

找到了另一种方法:

  1. 使用pdf2htmlEX工具(或任何其他PDF到HTML转换器)将PDF转换为HTML文件。
  2. 使用文本编辑器编辑HTML,然后删除水印。保存。
  3. 打印到HTML到新的PDF文档
  4. 利润

谢谢。您确定无法通过Adobe Acrobat删除水印吗?(这可能确实是一种更便宜的解决方案。)
Apache

我相信您需要某种密码才能删除Adobe Reader中的水印,因此我使用了这种方法。
多米尼克·安塔尔

0

这是对@Dennis在2012年7月30日18:06的回答的补充。他当然解决了更棘手的问题。

在最简单的水印简单的情况下,例如,未修饰的文本

史密德利专员

未压缩的PDF水印可以这样定义:

    BT
    75.96 625 Td
    (Smedley For Commissioner)Tj
    ET

其中,此特定水印实例75.96的水平偏移量和625垂直偏移量。(是的,可以看到实数和整数。)

如下所示的正则表达式将适用于所有此类水印,而忽略其位置的任何变化:

^BT\n[0-9.]+ [0-9.]+ Td\n\(Smedley For Commissioner\)Tj\nET\n

请注意,各种修改后的PDF运算符可以与格式更复杂的水印一起使用。这种幻想可以使读者期望(希望吗?)成为连续且易于搜索的字符串变成一团混乱的字母汤。例如,

Smedley™的E 1 =mc²

可能是此产品:

    BT
    75.96 625 Td
    (E)Tj
    -5 Ts
    (1)Tj
    0 Ts
    ( = mc)Tj
    5 Ts
    (2)Tj
    0 Ts
    (by Smedley)Tj
    5 Ts
    (TM)Tj
    0 Ts
    ET

。。。甚至更糟,如果您的水印是彩色增强的!

注意到所有这些之后,我还将注意到PDFtk具有一个声称可以处理水印的GUI版本,考虑到4美元的许可费。一点都不贵!

另一方面,我发现其网站目前通过Windows 8和宣传对操作系统的全面支持OS X 10.8 Mountain Lion。该年份已经超过4年了。PDFtk可能会过时吗?我怀疑不是,但我不知道。


谢谢您对PDFtk的建议,看起来很整洁,但是对,也“闻起来”有点过时了。免费版本是2.02,而Wikipedia说确实是3年前发布的:en.wikipedia.org/wiki/PDFtk
Apache

1
@Shiki-实际上,我对PDF格式进行了认真的研究,但取消了对过去10年来对PDF进度的详细评估。 总结如下: “ 根据PDF规范的开发,3年期PDFtk的不足。” 尽管自2005年以来已经进行了多次更新,但是_PDFtk_完全可以。_ 我在检查了一些常用的现代PDF文档源后说了这一点。我检查过的所有PDF文档都是按照2010年以前的PDF标准创建的(实际上是在此之前。)如果您有任何疑问,请检查有问题的PDF文件的前几十个字节。
Der Schley

0

这是免费和付费的方式,建议您使用Google云端硬盘。

Google云端硬盘可以打开文件并进行一些小的编辑。此外,它也可以用于从PDF在线删除水印。

  1. 打开您的Google云端硬盘帐户,该帐户与您的Gmail帐户基本相同。
  2. 单击“新建”>“文件上传”,选择一个PDF文档,然后将其上传。
  3. 完成后,您可以在云端硬盘上检查上传的文件,然后右键单击以使用“ Google文档”将其打开。
  4. 之后,您的水印将被自动删除。要保存它,请转到“文件”,然后单击“下载为”,然后选择“ PDF文档”。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.