不支持平面图像iTextSharp异常

时间:2014-01-30 15:10:35

标签: image itextsharp

我正在使用iTextSharp将扫描的文档呈现为PDF。文件类型不同;他们可能是jpegs,tiffs或gifs。我从Web服务中获取它们作为字节数组,并使用iTextSharp将它们转换为PDF。问题是,对于某些文件,我得到了“不支持平面图像”的例外。这是iTextSharp的限制还是还有其他事情我不知道了?还有其他人遇到过这个问题吗?

1 个答案:

答案 0 :(得分:0)

TIFF规范非常强大,并且有许多不同的方式来存储图像数据。 TIFF中的T表示“已标记”,如果您look in the spec for tag 284 you'll find PlanarConfiguration

  

1 = Chunky format 。存储每个像素的分量值   连续...例如,对于RGB数据,数据存储为   RGBRGBRGB

     

2 = 平面格式。组件分开存储   组件平面...例如,RGB数据与Red一起存储   一个组件平面中的组件,另一个组件平面中的绿色组件和蓝色组件   在另一个。

     

PlanarConfiguration = 2目前尚未广泛使用,因此不建议进行一般交换。它用作扩展,Baseline TIFF阅读器不需要支持它。

iTextSharp决定只支持默认的“粗略格式”。实际上你可以see that check and the exception in the source

我不知道为什么他们选择不支持它(虽然我可以猜测这是一个缺乏样本和屁股的痛苦的组合)但这基本上是导致你的问题的原因。您可以尝试替代TIFF解析器,这些解析器可能能够将有问题的TIFF转换为支持的格式。