Daniel Persson created PDFBOX-5795:
--------------------------------------

             Summary: Crash for Softmask with incorrect backdrop color 
components
                 Key: PDFBOX-5795
                 URL: https://issues.apache.org/jira/browse/PDFBOX-5795
             Project: PDFBox
          Issue Type: Bug
          Components: Rendering
    Affects Versions: 3.0.2 PDFBox, 2.0.31
            Reporter: Daniel Persson
         Attachments: borsen-2065-20111030-1-p4.pdf, crashfix.patch

This error occured in our production of an old archive. None of the files 
crashed in any other viewer (Chrome, Adobe, Firefox, Poppler a.s.o). 

 

I've read up on the subject in the 1.7 specification, and it seems like PDFBox 
is following the specification, but not being able to open these files seems a 
bit too strict.

 

The easiest way to reproduce is just to open the attached file with the 
debugger.
{code:java}
java -jar debugger-app-4.0.0-SNAPSHOT.jar borsen-2065-20111030-1-p4.pdf {code}
The application will crash with this exception:
{code:java}
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for 
length 1
    org.apache.pdfbox.pdmodel.graphics.color.PDColor.toRGB(PDColor.java:155)
    
org.apache.pdfbox.rendering.PageDrawer$TransparencyGroup.<init>(PageDrawer.java:1696)
    
org.apache.pdfbox.rendering.PageDrawer$TransparencyGroup.<init>(PageDrawer.java:1573)
    
org.apache.pdfbox.rendering.PageDrawer.applySoftMaskToPaint(PageDrawer.java:604)
    
org.apache.pdfbox.rendering.PageDrawer.showTransparencyGroupOnGraphics(PageDrawer.java:1549)
    
org.apache.pdfbox.rendering.PageDrawer.showTransparencyGroup(PageDrawer.java:1489)
    
org.apache.pdfbox.contentstream.operator.graphics.DrawObject.process(DrawObject.java:81)
    
org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:872)
    
org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:511)
    
org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:489)
    
org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:158)
    org.apache.pdfbox.rendering.PageDrawer.drawPage(PageDrawer.java:270)
    org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:346)
    
org.apache.pdfbox.debugger.pagepane.PagePane$RenderWorker.doInBackground(PagePane.java:527)
    
org.apache.pdfbox.debugger.pagepane.PagePane$RenderWorker.doInBackground(PagePane.java:506)
    java.base/java.lang.Thread.run(Thread.java:833)
 {code}
My solution, added as a patch, is to add a fallback to the colorspace available 
in the graphical context. This is working for the files I've tried so far.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to