pdf中的CCITTFaxDecode图像以精细的方式呈现,但是acrobat,mupdf,xpdf,ghostscript都有问题

问题描述 投票:0回答:1

我遇到了一些第三方生成的pdf文件的问题,其中包含文档扫描,pdf文档中的对象被定义:

11 0 obj
<<
/Subtype /Image
/DecodeParms
<<
/K -1
/EndOfBlock false
/Rows 2208
/Columns 1697
>>
/Type /XObject
/Filter /CCITTFaxDecode
/Width 1697
/Height 2208
/BitsPerComponent 1
/Length 76057
/ColorSpace /DeviceGray
/Interpolate true
>>

现在,chrome可以毫无问题地呈现PDF,而我尝试过的其他pdf操作实用程序:ghostscripts,imagemagick,mupdf,xpdf等会呈现截断的图像或抱怨文件。例如ghostscript和Acrobat,报道:

****错误:文件没有足够的数据用于图像。

但是,显然chrome可以解决任何问题。

有人可以详细说明哪个库或代码chrome或chromium用于解码CCITTFax图像?也许通过分析该代码,我可以修补或更新ghostscript以使用该库,然后我将能够使用gs重新编码文档。

Adobe论坛中有很多关于最近版本的Acrobat DC的帖子,这些版本曾经有过工作的PDF问题,但是那些相同的帖子表明Acrobat的最新更新修复了任何报告的问题,但在我的情况下,即使我正在使用最新版本的Acrobat,有问题的PDF无法呈现。

google-chrome pdf chromium ghostscript acrobat
1个回答
0
投票

我找到了一些qromxswpoi,Chromium使用LibTiff这是有道理的,因为大多数实现都使用它。虽然并非每个实现都使用相同的版本,但有些实现了自己的调整,因此您可能会在显示此类图像时看到PDF查看器之间的差异。

通常,Acrobat在图像数据不足时显示错误。根据图像尺寸,颜色空间表示和位深度,您可以计算图像数据流的大小(未压缩时),如果流中存在的内容小于您看到此类错误的内容。

一些PDF查看器所做的是用一些默认颜色填充缺失的数据,一些错误输出,并且一些只是使用当前在内存中的任何废话来填充剩余部分。

© www.soinside.com 2019 - 2024. All rights reserved.