Linux命令行实用程序删除PDF文件中的颜色?

时间:2010-10-06 15:29:20

标签: pdf colors ghostscript grayscale

我正在搜索能够删除PDF中颜色的linux命令行实用程序/脚本。该实用程序的输出应该是相同的PDF,但是为灰度。

有谁知道怎么做?

由于

1 个答案:

答案 0 :(得分:6)

您可以使用Ghostscript:

gswin32c ^
  -o grayscale.pdf ^
  -sDEVICE=pdfwrite ^
  -sColorConversionStrategy=Gray ^
  -sProcessColorModel=DeviceGray ^
  -dCompatibilityLevel=1.4 ^
   c:/path/to/input.pdf 

(示例适用于Windows;在Linux上使用gs而不是gswin32c.exe\作为行继续标记而不是^)。


更新

如果颜色转换无法正常工作,并且您看到的消息如“无法将色彩空间转换为灰色,将策略还原为LeaveColorUnchanged”那么......

  1. 您的Ghostscript可能是 9.x版本系列的新版本,
  2. 您的源PDF可能使用嵌入式 ICC颜色配置文件
  3. 在这种情况下,将 -dOverrideICC 添加到命令行,看看它是否会根据需要更改结果。


    此外,原始答案包含一个拼写错误:

    • 使用 -sProcessColorModel=/DeviceGray (附加正斜杠字符)
    • 而不是-sProcessColorModel=DeviceGray(没有正斜杠))