Details
- 
        Type: Bug Bug
- 
        Status: Closed
- 
            Priority: Major Major
- 
            Resolution: Fixed
- 
            Affects Version/s: 4.2.1
- 
            Fix Version/s: None
- 
            Component/s: Core/Parsing
- 
            Labels:None
- 
            Environment:-
- 
                        Workaround Exists:Yes
- 
                        Workaround Description:JDK 1.5 can be used to void the colour space issue.
Description
                    The image at the top of the PDF is showing as blue instead of the correct color yellow. I also see the following exception but unsure whether it is relevant: 
FINE: Could not create instance oof font file 1
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.icepdf.core.pobjects.fonts.FontFactory.createFontFile(FontFactory.java:166)
at org.icepdf.core.pobjects.fonts.FontDescriptor.init(FontDescriptor.java:322)
at org.icepdf.core.pobjects.fonts.nfont.Font.init(Unknown Source)
at org.icepdf.core.pobjects.Resources.getFont(Resources.java:240)
at org.icepdf.core.util.ContentParser.consume_Tf(ContentParser.java:2056)
at org.icepdf.core.util.ContentParser.parseText(ContentParser.java:1175)
........
........
Caused by: java.lang.IllegalStateException
at org.icepdf.core.pobjects.fonts.nfont.NFontType1.readDICT(Unknown Source)
Screenshots and PDF attached.
FINE: Could not create instance oof font file 1
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.icepdf.core.pobjects.fonts.FontFactory.createFontFile(FontFactory.java:166)
at org.icepdf.core.pobjects.fonts.FontDescriptor.init(FontDescriptor.java:322)
at org.icepdf.core.pobjects.fonts.nfont.Font.init(Unknown Source)
at org.icepdf.core.pobjects.Resources.getFont(Resources.java:240)
at org.icepdf.core.util.ContentParser.consume_Tf(ContentParser.java:2056)
at org.icepdf.core.util.ContentParser.parseText(ContentParser.java:1175)
........
........
Caused by: java.lang.IllegalStateException
at org.icepdf.core.pobjects.fonts.nfont.NFontType1.readDICT(Unknown Source)
Screenshots and PDF attached.
Issue Links
- depends on
- 
             PDF-276
        JPEGDecoder class behaviour has changed in JDK 1.6 PDF-276
        JPEGDecoder class behaviour has changed in JDK 1.6-           
- Closed
 
-         
 
                             
                        
Note from the customer:
I believe the issue is related to the fact that the images in the PDF are in the DeviceCMYK colorspace. I converted the document to sRGB, and this fixes the incorrect colors in the IcePDF rendered output, but has the negative side effect of degrading the quality of the images/colors. So although this hints at the problem, I don't think that converting the documents to RGB is a suitable workaround for us.
Are there any options in the IcePDF API that might allow for working around this issue? I am calling document.getPageImage(...) to render the page, and then using ImageIO.write(image, "png", outStream), to write the image as a png.