在 Linux 上将 PDF 转换为灰度,*不添加透明度*

在 Linux 上将 PDF 转换为灰度,*不添加透明度*

我有一个彩色 PDF,它不使用透明度。我想将其转换为灰度 PDF也缺乏透明度在 Linux 上。

将 PDF 转换为灰度的常见方法是使用 GhostScript:

gs \
  -o grayscale.pdf \
  -sDEVICE=pdfwrite \
  -sColorConversionStrategy=Gray -dProcessColorModel=/DeviceGray\
  -dCompatibilityLevel=1.4 \
  color.pdf 

问题是这会导致 PDF 具有透明度,据称我的目标下游流程(由 POD 供应商打印)无法正确支持该 PDF。

显而易见的解决方案是将输出 PDF 版本降低到不支持透明度的 1.3:

gs \
  -o grayscale-1.3.pdf \
  -sDEVICE=pdfwrite \
  -sColorConversionStrategy=Gray -dProcessColorModel=/DeviceGray\
  -dCompatibilityLevel=1.3 \
  color.pdf 

不幸的是,这会导致 PDF 栅格化,这也是我想避免的。

我并没有执着于 GhostScript,任何其他适用于 Linux 的解决方案都在范围内。

相关内容