如何摆脱ghostscripts添加的边距?

时间:2013-01-22 08:17:23

标签: pdf image-processing png ghostscript

我希望使用此命令将PDF的第一页作为PNG提取,以对其进行一些图像处理:

$ gs -q -dNOPAUSE -dBATCH -dEPSCrop -sDEVICE=pngalpha -dLastPage=1 -sOutputFile='test.png' 'test2.pdf'

它适用于大多数PDF,但它在这个上添加了一个透明的边距:http://ubuntuone.com/23676W4TJPyX6W2pkp5guG

Gimp按预期完成(没有保证金),convert也有同样的问题,-sDEVICE=jpeg也是。

有什么办法可以避免吗?

2 个答案:

答案 0 :(得分:4)

Ghostscript不会添加边距,它肯定不会添加透明边距。问题不在于Ghostscript,它与您的PDF文件有关。您的文件包含:

/ MediaBox [0 0 595 842] / CropBox [27.5 61.0 567.5 781.0]

Ghostscript使用MediaBox,其他观众可能会也可能不会使用CropBox。如果您阅读GS文档,您将找到-dUseCropBox开关,该开关指示GS在设置媒体大小时使用PDF文件的CropBox而不是MediaBox。

-dEPSCrop根本不会对PDF文件做任何事情。

答案 1 :(得分:1)

为了记录,如果有人遇到同样的问题,我只找到了正确的开关:-dUseCropBox。最后的命令现在是:

$ gs -q  -dUseCropBox -dNOPAUSE -dBATCH -sDEVICE=pngalpha -dLastPage=1 -sOutputFile='test.png' 'test2.pdf'