2016-12-15 67 views
0

我使用的Ghostscript 8.x中转换为PDF到grayscale.I现在用下面的命令:的ghostscript如何留住PDF大小,同时将PDF转换为灰度

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

这成功地转换我的PDF为灰度,但我失去了原始的pdfsize。由此产生的pdf有很多像A4尺寸的空白。 我的输入pdf的固定宽度为3厘米(高度可能会有所不同)。我希望输出pdf的尺寸相同。 请建议。

回答

1

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

只需使用pdfwrite设备来完成所有工作,但您需要一个合理的最新版本的Ghostscript才能完成。可能比您现在明显使用的旧版本更新。

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

该命令给我错误:CRIT:rangecheck in .putdeviceprops。请建议。 – Jeets

+0

“CRIT:”不是Ghostscript错误。你现在在用什么版本的Ghostscript?你有没有更新到不到6岁的东西?我确实说过你需要一个合理的最新版本,目前发布的版本是9.20。 – KenS

+0

感谢KenS通过一些修改帮助升级:gs -sOutputFile = grayscale.pdf -sDEVICE = pdfwrite -sColorConversionStrategy = Gray -dProcessColorModel =/DeviceGray -dCompatibilityLevel = 1.4 -dNOPAUSE -dBATCH 2016-12-15-164803020.pdf Jeets

相关问题