经过Ghostscript / ps2pdf优化后,PDF中缺少图像

时间:2013-01-15 00:33:09

标签: php pdf optimization tcpdf ghostscript

我正在开发一个用于以PDF和打印形式创建书籍的Web应用程序(PHP)。每个书页都保存为单独的高分辨率JPEG,并插入由TCPDF(http://www.tcpdf.org/)创建的新PDF文档中。最后一页在底部附近插入了一个额外的水印图像(PNG,2500x2000,72dpi)。

所有这些都运行正常,但是当我使用以下命令调用Ghostscript来优化PDF时,我遇到了麻烦。除了缺少水印外,它可以正确处理整个PDF。

gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=LowResOutput.pdf -dPDFSETTINGS=/screen -dCompatibilityLevel=1.4 HiResInput.pdf

我已确认水印在未经优化的源文件中正确显示。如果我将质量设置(-dPDFSETTINGS)从 / screen 更改为 / printer ,则会生成包含水印的高分辨率PDF。

我不确定我是否缺少导致水印图像被排除或者是什么的质量/输出设置。如果有人知道为什么会这样,我会非常感谢你的回应。

谢谢!

1 个答案:

答案 0 :(得分:3)

您使用的是什么版本的Ghostscript? “水印”是如何形成的? (注释,对页面内容流的修改,还有其他什么?它是否透明?)

如果不完全了解所有单独设置的影响,请不要使用PDFSETTINGS,很可能是颜色转换导致输出发生一些变化,但可能还有其他原因。从广义上讲,我根本不会使用PDFSETTINGS开关,单独设置每个开关。

最后,你能把一个(小!)文件发送到Ghostscript的公共场所。如果不看一个例子,几乎不可能做出明智的评论。