开源PDF处理工具——Ghostscript的安装和使用

🔧 1. 安装 Ghostscript

Windows

  1. 下载 Ghostscript:
  1. 安装后,记住 Ghostscript 的安装路径,通常是:
C:\Program Files\gs\gs10.00.0\bin\
  1. gswin64c.exe 添加到系统环境变量,方便在命令行中使用。

Mac & Linux

使用 Homebrew(Mac)或包管理器(Linux)安装:

brew install ghostscript  # Mac
sudo apt install ghostscript  # Ubuntu/Debian
sudo dnf install ghostscript  # Fedora

📂 2. 使用 Ghostscript 压缩 PDF

命令格式

gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.pdf

参数解释

  • -sDEVICE=pdfwrite → 选择 PDF 输出模式

  • -dCompatibilityLevel=1.4 → 设定 PDF 兼容级别(1.4 兼容大多数 PDF 读者)

  • -dPDFSETTINGS=/screen → 选择压缩质量(下面有更多选项)

  • -dNOPAUSE -dQUIET -dBATCH → 让命令运行时不暂停、不显示详细信息

  • -sOutputFile=output.pdf → 设置输出文件

  • input.pdf → 你的原始 PDF 文件

不同压缩等级

你可以更改 -dPDFSETTINGS 以选择不同压缩质量:

选项 作用 适用场景
/screen 最强压缩,低质量 仅用于屏幕阅读
/ebook 中等压缩,中等质量 适合电子书阅读
/printer 适中压缩,高质量 适合打印
/prepress 低压缩,高质量 用于出版印刷
/default 默认压缩 介于 /screen/printer 之间

例如:

gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=compressed.pdf input.pdf

📂 3. PDF 转换(格式互转)

Ghostscript 可将 PDF 转换为 JPG、PNG、TIFF、EPS、PS 等格式:

gs -sDEVICE=pngalpha -r300 -o output.png input.pdf
  • -sDEVICE=pngalpha → 转换为 PNG(支持透明背景)

  • -sDEVICE=jpeg → 转换为 JPEG

  • -sDEVICE=tiffg4 → 转换为黑白 TIFF(适合传真)

示例:PDF 转图片

gs -sDEVICE=jpeg -dJPEGQ=90 -r300 -o output.jpg input.pdf
  • -dJPEGQ=90 → 设置 JPEG 质量(0-100)

  • -r300 → 分辨率 300 DPI(适合打印)


📂 4. PDF 合并(多个 PDF 文件合并)

Ghostscript 可以将多个 PDF 文件合并成一个:

gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=merged.pdf file1.pdf file2.pdf file3.pdf

📂 5. PDF 页面拆分(按页拆分)

提取 PDF 的某些页面:

gs -sDEVICE=pdfwrite -dNOPAUSE -dBATCH -sPageList=1,3,5 -sOutputFile=output.pdf input.pdf
  • -sPageList=1,3,5 → 仅保留第 1、3、5 页

📂 6. PDF 加密 & 解密

加密 PDF(设置密码)

gs -sDEVICE=pdfwrite -dBATCH -dNOPAUSE -q -sOutputFile=secure.pdf -dOwnerPassword=ownerpass -dUserPassword=userpass input.pdf
  • -dOwnerPassword=ownerpass → 设置 所有者密码(可更改权限)

  • -dUserPassword=userpass → 设置 用户密码(只读)

解密 PDF(移除密码)

如果你知道 PDF 密码,可以使用:

gs -sDEVICE=pdfwrite -dNOPAUSE -dBATCH -sOutputFile=unlocked.pdf -c .setpdfwrite -f input.pdf

📂 7. PostScript (PS) 和 PDF 互转

Ghostscript 主要是一个 PostScript 解释器,因此可以轻松处理 PS 和 PDF:

  • PS 转 PDF

    gs -sDEVICE=pdfwrite -sOutputFile=output.pdf input.ps
    
  • PDF 转 PS

    gs -sDEVICE=ps2write -sOutputFile=output.ps input.pdf
    

📂 8. 更改 PDF 版本

如果你需要转换 PDF 版本(如 PDF 1.7 降级为 PDF 1.4),可以这样做:

gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -sOutputFile=output.pdf input.pdf
  • -dCompatibilityLevel=1.4 → 转换为 PDF 1.4

🔥 总结:Ghostscript 主要用于

PDF 压缩(降低文件大小)
PDF 转图片(JPG、PNG、TIFF)
PDF 合并 & 拆分(多文件合并、提取特定页面)
PDF 加密 & 解密(设置或移除密码)
格式转换(PDF ↔ PostScript)

posted @ 2025-03-27 16:06  江海余生  阅读(1522)  评论(0)    收藏  举报