借助iText 5,我想从给定的PDF文件中提取所有TIFF图像,并将它们另存为TIFF文件。 示例和其他帖子(1,2)使用以下方法:
PdfImageObject
,然后在line 189中对图像流进行解码(如果存在相应的过滤器实现)。PdfImageObject#getImageAsBytes()
,返回JPEG(原始),PNG(重新编码)或TIFF(每像素8位)。结果,具有1位色深的TIFF图像被转换为PNG,这不是我所需要的。
另一种方法是调用PdfImageObject#getBufferedImage()
,它将在步骤(2)中将图像解码为光栅,然后再使用ImageIO.write(bufferedImage, "tiff", file)
将其编码为TIFF。
正如人们所看到的那样,这并不有效。 this post中显示的另一种解决方案演示了如何通过在TIFF头之前添加TIFF头来将编码的TIFF图像流保存到文件,这是我正在寻找的解决方案。
iText在这里可以帮忙吗?
答案 0 :(得分:0)
PDF图片不是不是 TIFF图片。
但是PDF可以包含使用TIFF中也使用的压缩技术的图像,例如Flate,CCITT,LZW,JPEG。