我正在使用 iTextSharp 从 PDF 中提取图像。但是,如果图像是 CCITT 传真解码的,则位图创建会失败并出现“参数无效”错误。
由于 PdfReader.GetStreamBytesRaw 返回 CCITT 编码字节,位图创建失败。
有人可以帮我解码CCITT编码的字节,然后用它创建一个位图吗?
谢谢,钱德鲁
我正在使用 iTextSharp 从 PDF 中提取图像。但是,如果图像是 CCITT 传真解码的,则位图创建会失败并出现“参数无效”错误。
由于 PdfReader.GetStreamBytesRaw 返回 CCITT 编码字节,位图创建失败。
有人可以帮我解码CCITT编码的字节,然后用它创建一个位图吗?
谢谢,钱德鲁
我找到了一种从 CCITT 编码的 PDF 文件中获取位图的解决方法。
Ghostscript 支持将 PDF 文件转换为 Tiff。这里有一个简单的 C# 包装器可用于将 PDF 文件转换为 jpg 文件。 http://www.mattephraim.com/blog/2009/01/06/a-simple-c-wrapper-for-ghostscript/ 可以轻松修改包装器以获取 CCITT 压缩的 Tiff 文件而不是 jpg 文件。包装器支持将 PDF 的特定页面转换为 Tiff。
解决方案是,将PDF的特定页面转换为临时tiff文件,从tiff加载位图并删除tiff文件。
钱德鲁
但在你的答案中得到分辨率,我将从 pdf 中的原始图像中得到分辨率