[
https://issues.apache.org/jira/browse/PDFBOX-2570?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14247188#comment-14247188
]
Tilman Hausherr commented on PDFBOX-2570:
-----------------------------------------
Maybe, but the spec clearly mentions that it is a single float and not an array
with one element, so the API should get and set a single float and not an
array. While looking at this stuff, I also found some double code so I'm now
refactoring this stuff. And the toRGB method is also quite different to the one
from CalRGB, but I'm running tests first.
> ClassCastException in PDCalGray: COSFloat cannot be cast to COSArray
> --------------------------------------------------------------------
>
> Key: PDFBOX-2570
> URL: https://issues.apache.org/jira/browse/PDFBOX-2570
> Project: PDFBox
> Issue Type: Bug
> Components: Parsing
> Affects Versions: 2.0.0
> Reporter: Tilman Hausherr
> Assignee: Tilman Hausherr
> Labels: CalGray, CalRGB, regression
> Fix For: 2.0.0
>
>
> {code}
> INFORMATION: Rendering: PDFBOX-1724.pdf
> java.lang.ClassCastException: org.apache.pdfbox.cos.COSFloat cannot be cast
> to org.apache.pdfbox.cos.COSArray
> at
> org.apache.pdfbox.pdmodel.graphics.color.PDCalRGB.getGamma(PDCalRGB.java:158)
> at
> org.apache.pdfbox.pdmodel.graphics.color.PDCalRGB.toRGB(PDCalRGB.java:95)
> at
> org.apache.pdfbox.pdmodel.graphics.color.PDCalGray.toRGB(PDCalGray.java:81)
> at
> org.apache.pdfbox.pdmodel.graphics.color.PDCIEBasedColorSpace.toRGBImage(PDCIEBasedColorSpace.java:88)
> {code}
> The cause is that in one of the redesigns it was overseen that the Gamma is a
> single value for CalGray, and not an array like in CalRGB. Thus PDCalGray
> cannot be extended from PDCalRGB. The bug didn't have an effect because the
> gamma wasn't used before PDFBOX-2553. Instead I will extend it from
> PDCIEBasedColorSpace or from a new abstract class PDCalBasedColorSpace.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)