gpt4 book ai didi

java - 使用 iText 将 tiff 文件转换为 pdf 文件时出现异常

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:44:02 25 4
gpt4 key购买 nike

当我尝试使用 itextpdf 5.5.5tiff 文件转换为 pdf 文件时,出现以下异常:

java.lang.RuntimeException: Scanline must begin with EOL code word. at com.itextpdf.text.pdf.codec.TIFFFaxDecoder.readEOL(TIFFFaxDecoder.java:1303) at com.itextpdf.text.pdf.codec.TIFFFaxDecoder.decode2D(TIFFFaxDecoder.java:811) at com.itextpdf.text.pdf.codec.TiffImage.getTiffImage(TiffImage.java:223) at com.itextpdf.text.pdf.codec.TiffImage.getTiffImage(TiffImage.java:315) at com.itextpdf.text.pdf.codec.TiffImage.getTiffImage(TiffImage.java:303) at com.itextpdf.text.Image.getInstance(Image.java:308) at com.itextpdf.text.Image.getInstance(Image.java:242) at com.itextpdf.text.Image.getInstance(Image.java:365) at com.minstone.convert.PicConvertor.convertPicToPdf1(PicConvertor.java:81) at com.minstone.convert.DocConverter$ConvertWork.king2pdf(DocConverter.java:143) at com.minstone.convert.DocConverter$ConvertWork.run(DocConverter.java:99) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619)

我可以在任何图像查看器中打开 tiff 文件,所以它是有效的。

最佳答案

iText 在处理无效或损坏的 Tiff 文件时有一些回退。默认情况下,不使用这些回退,如果您希望 iText 尝试解析无效的 Tiff 文件(例如 http://api.itextpdf.com/itext/com/itextpdf/text/Image.html#getInstance%28byte[],%20boolean%29 )

如果此 boolean 值设置为 true,iText 只会在用尽所有选项时抛出错误。这应该是检查您的 TIFF 文件的标志...

另一种解决方法是使用 TiffImage 并完全绕过 Image 类。 TiffImage 还使用 recoverFromImageError 标志,但它还有一个名为“direct”的附加标志,它也可以解决您的问题。 (http://api.itextpdf.com/itext/com/itextpdf/text/pdf/codec/TiffImage.html)

关于java - 使用 iText 将 tiff 文件转换为 pdf 文件时出现异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29787388/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com