PDF ブラウザー (Reader/Foxit) で正常に開く不明なソースによって生成されたファイルがいくつかありますが、iText はそれらを処理できません。特定のファイルについては、次のようになります。
Exception in thread "main" java.lang.IllegalArgumentException: Unexpected colorspace /CS0
at com.itextpdf.text.pdf.parser.InlineImageUtils.getComponentsPerPixel(InlineImageUtils.java:238)
at com.itextpdf.text.pdf.parser.InlineImageUtils.computeBytesPerRow(InlineImageUtils.java:251)
at com.itextpdf.text.pdf.parser.InlineImageUtils.parseUnfilteredSamples(InlineImageUtils.java:280)
at com.itextpdf.text.pdf.parser.InlineImageUtils.parseInlineImageSamples(InlineImageUtils.java:320)
at com.itextpdf.text.pdf.parser.InlineImageUtils.parseInlineImage(InlineImageUtils.java:153)
at com.itextpdf.text.pdf.parser.PdfContentStreamProcessor.processContent(PdfContentStreamProcessor.java:370)
at com.itextpdf.text.pdf.parser.PdfReaderContentParser.processContent(PdfReaderContentParser.java:79)
/CS0 の色空間が /CS1 から /CS9 (または類似のもの) に変更されることがあります。
それは iText のバグですか (私は Java 1.7、iText 5.4.1 を使用しています)、それとも私の pdf ファイルが壊れているだけですか? PDFファイルが壊れている場合でも、修正する方法はありますか? (Adobe Reader は何とかそれを行うようですが、残念ながらファイルを開いて再度保存することはできません)。