[
https://issues.apache.org/jira/browse/PDFBOX-4205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17044393#comment-17044393
]
Constantine Dokolas commented on PDFBOX-4205:
---------------------------------------------
I'm obviously incapable of properly searching a git repo (I was using the
PDFBox github mirror) for changes in a certain file.
Anyway, I jumped the hoops and tried 2.0.19 and the problem is still there. As
I implied, the problem is with {{LosslessFactory.createFromGrayImage()}}
(unchanged for some time) using {{getRGB()}} which converts from the linear
grayscale colorspace to sRGB, which messes with the component values (due to
gamma correction).
My workaround will be to do the encoding myself, getting the bytes from the
writable raster or the underlying buffer instead of via the getRGB method.
Let me know if there is something I can help with.
> LosslessFactory alters image
> ----------------------------
>
> Key: PDFBOX-4205
> URL: https://issues.apache.org/jira/browse/PDFBOX-4205
> Project: PDFBox
> Issue Type: Bug
> Affects Versions: 2.0.7, 2.0.8, 2.0.9
> Environment: Ubuntu 16.04
> Reporter: Harry Dent
> Priority: Minor
> Attachments: image-2020-02-24-17-59-08-300.png, lossy.png,
> picture_of_text.png
>
>
> The attached grayscale png becomes lighter when run through the following
> code snippet:
> {code:java}
> BufferedImage image = ImageIO.read(new File("picture_of_text.png"));
> PDImageXObject xObject = LosslessFactory.createFromImage(new PDDocument(),
> image);
> BufferedImage lossy = xObject.getImage();
> ImageIO.write(lossy, "png", new File("lossy.png"));
> {code}
> The difference is easiest to spot by looking at the "S" in "41st". The loss
> in quality occurs in {{createFromImage()}} (rather than {{getImage()}}),
> which can be shown by embedding the {{PDImageXObject}} into a {{PDDocument}}
> and then saving this document to a file.
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]