我有pdf文件,主要是旧报纸页面的大图像。使用gs 9.06这些都是正确渲染的,但在我的网站上(使用ghostscript 8.70),它们显示出嘈杂的灰色背景。以下链接给出了一个示例(从gs下载单页):
http://mvtm.ca/collections/php/serve_pdfpage.php?file=1940-04-11&page=01
实际的gs命令是: gs -q -sDEVICE = pdfwrite -r200 -dNOPAUSE -dBATCH -dSAFER -dFirstPage = 01 -dLastPage = 01 -sOutputFile = - mypdffile.pdf
似乎没有显示图像层(唯一应该渲染的东西)。 pdf也由OCR程序处理,以添加用于搜索的背景文本。
此精确程序在我的本地计算机(Mac OS X)上正常运行。
有谁知道这里发生了什么?
答案 0 :(得分:0)
我不完全确定你所看到的是一个问题。你说使用Ghostscript的最新版本“正常”并使用旧版本没有?
这只是告诉我,过去四年中某个时候已经修复了一个错误。在我看来,你应该升级你的8.70安装。
但是请注意,通过查看损坏的输出可以说不是很多,我需要在它被破坏之前看到原始文件,以便猜测错误是什么。
孤立地我的'猜测'是原始文件使用JBIG2或JPX编码的图像作为背景,并且我们的JBIG2解码器有一个bug(一些已被修复)或者在JPX的情况下JasPER解码器有一个bug。我们停止使用JasPER,因为它很慢,内存耗尽,错误缠身并且实际上不受支持,而是转移到OpenJPEG。
但也许我错过了你的观点。
答案 1 :(得分:0)
我不确定你来自哪里或你要去哪里。你提取一页pdf并输出另一个pdf,但链接是.png。查看输入和中间.pdf
可能会有所帮助我所看到的是单色位图。您可以添加-dProcessColorModel = / DeviceGray或-dProcessColorModel = / DeviceRGB,这将允许输出pdf具有音调,而不仅仅是黑色和白色。
另一种可能性是添加一条变换曲线,它可以减轻背景,同时使黑色变暗,但似乎还有其他事情发生。输出中的标题似乎缺少字母。即使灰度和更好的黑白对比,似乎还会发生其他事情。