0

我有 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)上正确运行。

有谁知道这里发生了什么?

4

2 回答 2

0

我不完全确定您认为什么是问题。您说使用最新版本的 Ghostscript 可以“正常”工作,而使用旧版本则不行?

这只是向我暗示,在过去四年中的某个时间已经修复了一个错误。在我看来,您应该升级您的 8.70 安装。

但请注意,通过查看损坏的输出并不能说太多,我需要在原始文件损坏之前查看原始文件,以便猜测错误是什么。

单独来看,我的“猜测”是原始文件使用 JBIG2 或 JPX 编码的图像作为背景,并且我们的 JBIG2 解码器有一个错误(一些已修复)或者在 JPX 的情况下 JasPER解码器有一个错误。我们停止使用 JasPER,因为它速度慢、内存占用大、漏洞百出且实际上不受支持,而是转而使用 OpenJPEG。

但是,也许我错过了您的观点。

于 2013-04-25T07:30:55.770 回答
0

我不确定你从哪里来或要去哪里。您提取一个pdf的一页并输出另一个pdf,但链接是.png。查看输入和中间 .pdf 可能会有所帮助

我看到的是单色位图。您可以添加 -dProcessColorModel=/DeviceGray 或 -dProcessColorModel=/DeviceRGB 这将允许输出 pdf 具有色调,而不仅仅是黑白。

另一种可能性是添加一条转换曲线,它可以使背景变亮,同时使黑色变暗,但似乎还有其他事情发生。输出中的标题似乎缺少字母。即使灰度和更好的黑白对比度,似乎正在发生其他事情。

于 2013-04-26T00:11:14.103 回答