我的博客

分享技术与思想的点滴

用 Ghostscript 重写 PDF 并去除水印(好像部分无法去除,但能显著减小文件大小)

Ghostscript 的安装方式取决于你的操作系统。以下分平台说明:


Windows 安装

方法一:官网下载安装包(推荐)

  1. 下载地址

    https://ghostscript.com/releases/gsdnld.html
  2. 选择版本

    • 一般选 AGPL Release(免费开源)
    • 根据系统选 64 位或 32 位(大部分人选 64-bit
  3. 安装步骤

    • 双击 .exe 安装包
    • 一路 Next
    • 关键一步:勾选 "Add Ghostscript to PATH"(或安装完成后手动添加)
  4. 验证安装: 打开 CMDPowerShell,输入:

    gswin64c --version

    或者:

    gs --version

    如果显示版本号(如 10.04.0),说明安装成功。

方法二:使用 Chocolatey(如果你有的话)

choco install ghostscript

方法三:使用 Winget(Windows 11 自带)

winget install ArtifexSoftware.Ghostscript

macOS 安装

使用 Homebrew(最简单)

brew install ghostscript

验证:

gs --version

Linux 安装

Ubuntu / Debian

sudo apt update
sudo apt install ghostscript

CentOS / RHEL / Fedora

sudo yum install ghostscript
# 或者
sudo dnf install ghostscript

Arch Linux

sudo pacman -S ghostscript

安装后测试

用你之前那份 PDF 测试一下:

gs -o test_fixed.pdf -sDEVICE=pdfwrite -dPDFSETTINGS=/prepress 1.pdf

如果生成 test_fixed.pdf 且没有报错,说明 Ghostscript 工作正常。


常见问题

Q: Windows 下输入 gs 提示找不到命令?

A: 手动添加环境变量:

  1. 找到 Ghostscript 安装目录下的 bin 文件夹(通常是 C:\Program Files\gs\gs10.04.0\bin
  2. 复制这个路径
  3. Windows 搜索框输入 "环境变量" -> 编辑系统环境变量 -> 环境变量 -> Path -> 新建 -> 粘贴路径
  4. 重新打开 CMD 再试

Q: Windows 下命令是 gs 还是 gswin64c

A: 两种都可以:

  • gswin64c:64 位命令行版本
  • gswin32c:32 位命令行版本
  • gs:通用别名(如果配置了 PATH 的话)

如果 gs 不行,就用 gswin64c


装好后,你就可以用这条命令一键清洗 PDF(去水印 + 修复 Pattern 错误):

gswin64c -o 1_clean.pdf -sDEVICE=pdfwrite -dPDFSETTINGS=/prepress 1.pdf

经过测试,我好像并不能去除水印,只是文件压缩到了1/5大小。