ghostscript 如何在将 pdf 转换为灰度时保留 pdf 大小

ghostscript how to retain pdf size while converting pdf to grayscale

我正在使用 Ghostscript 8.x 将 pdf 转换为 grayscale.I 我正在使用以下命令:

gs -dNOPAUSE -dBATCH -q -sOutputFile=- -sDEVICE=psgray  2016-12-15-165043474.pdf | ps2pdf  - output.pdf

这成功地将我的 pdf 转换为灰度,但我丢失了原始 pdf 大小。生成的 pdf 有很多空白,看起来像 A4 大小。 我的输入 pdf 具有固定宽度 3cm(高度可能会有所不同)。我希望输出 pdf 具有相同的大小。 请提出建议。

不要使用psgray设备!这已被严重弃用,并已在最新版本的 Ghostscript 中完全删除。通过使用它,您可以将 PDF 转换为 PostScript,然后再将其转换回 PDF。比您需要的步骤更多(每次转换都可能引入问题),这就是您从中获取默认媒体大小的地方。

只需使用 pdfwrite 设备即可完成所有工作,但您需要相当新的 Ghostscript 版本才能完成。可能比您当前使用的旧版本更新。

gs -sDEVICE=pdfwrite -sColorConversionStrategy=DeviceGray -sOutputFile=out.pdf input.pdf