我有一个包含多个页面的PDF文件,其中包含一些彩色证书,我需要它的黑白(灰度)版本。
有没有办法用一个命令或者任何简单的图形界面程序(最好是自由开源软件)将其转为灰度?
原则上,我可以在GIMP中分别打开所有页面,将它们转为灰度,然后重新合并,但这需要很多工作量。
有没有办法用一个命令或者任何简单的图形界面程序(最好是自由开源软件)将其转为灰度?
原则上,我可以在GIMP中分别打开所有页面,将它们转为灰度,然后重新合并,但这需要很多工作量。
转换的一个巨大劣势是无论你做什么,它都会转换为位图图像... 试一试这个:
gs -sOutputFile=outfile.pdf -sDEVICE=pdfwrite \
-sColorConversionStrategy=Gray -dProcessColorModel=/DeviceGray \
-dCompatibilityLevel=1.4 infile.pdf < /dev/null
/dev/null
进行重定向,因为默认情况下gs
是交互式的。有很多选项可用于调整输出,你可以查看ghostscript的pdfwrite参数。</dev/null
?另外,-dProcessColorModel
和-sProcessColorModel
之间有什么区别? - Archisman Panigrahi-s
和-d
之间的区别对我来说并不完全清楚。-s
定义了一个后置字符串,但我不确定-d
选项的作用是什么。 - Vincent Fourmond-density 300
。虽然它保留了质量,但将一个大小为 1.4 MB 的 PDF 转换成了 29 MB。像 https://pdfresizer.com/black-and-white 这样的网络服务可以同时保持大小和质量。类似的东西应该在 Ubuntu 中也是可用的。 - Archisman Panigrahi-density
参数可以得到漂亮的灰度效果。如果你需要带有干净背景的黑白图像,建议使用-density 300 -threshold 75%
参数。这在你保留原始彩色扫描并希望重新打印时非常有用。 - undefinedconvert -density 300 -threshold 75% input.pdf output.pdf