You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by "Jani Pehkonen (JIRA)" <ji...@apache.org> on 2018/06/12 14:46:00 UTC

[jira] [Commented] (PDFBOX-3000) Transparency Group issues

    [ https://issues.apache.org/jira/browse/PDFBOX-3000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16509705#comment-16509705 ] 

Jani Pehkonen commented on PDFBOX-3000:
---------------------------------------

[^nonisolated_groups_patch.zip]

I have created a patch that improves the rendering of blend modes in transparency groups. Previously PDFBox has implemented only isolated (/I true) transparency groups because groups have been rendered to an image that is initially fully transparent. To implement non-isolated groups (/I false), we must follow the PDF spec. Use the group backdrop (copied from parent group or page) as the initial content of the group image. This allows the group contents to be blended with the graphics under the group. Finally when the group rendering is done, we must compute backdrop removal. It ensures the backdrop is not rendered twice on the parent but it leaves the effects produced by blend modes.

My patch works if PDFRenderer is rendering to a BufferedImage. If it's rendering to a Graphics2D object, the page can't provide its pixel data to be used as a backdrop in groups, so blend modes will produce incorrect colors like they have done before my patch.

Here is a PDF that shows the difference between isolated and non-isolated groups when blend modes are used [^isolation.pdf]

> Transparency Group issues
> -------------------------
>
>                 Key: PDFBOX-3000
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-3000
>             Project: PDFBox
>          Issue Type: Bug
>          Components: Rendering
>    Affects Versions: 2.0.0
>            Reporter: John Hewson
>            Priority: Major
>              Labels: Transparency
>             Fix For: 3.0.0 PDFBox
>
>         Attachments: 007087-payment-due-p58_reduced2.pdf, BlendModes-rgb.pdf, PDFBOX-1697-reduced-rotations.pdf, PDFBOX-2182_mod.pdf, PDFBOX-3400-RGB.pdf, PDFBOX-3494_reduced.pdf, PDFBOX-3494_reduced_cropX.pdf, PDFBOX-3564-Mask.pdf, PDFBox3359PanelTestEnhanced.java, PDFJS-2845-p1.pdf, PDFJS-5526-p13_reduced1.pdf, PDFJS-5526-p13_reduced2.pdf, PDFJS-5526-p13_reduced3-nogroup.pdf, PDFJS-5811-2-p3_reduced.pdf, PDFJS-5811-2-p3_reduced4.pdf, PDFJS-5811-2-p4_reduced-rotations.pdf, PDFJS-5811-2.pdf, PDFJS-5853_reduced.pdf, PDFJS-6967-p8.pdf, PDFJS-6967_reduced_outside_softmask.pdf, PDFJS-8136-p1.pdf, PDFJS-8136-p1_reduced.pdf, SoftMask-Clipped.pdf, SoftMask.pdf, blendmodes.pdf, circle-simple.pdf, ds-firewall-enterprise-p1_reduced.pdf, gs-bugzilla689309-reduced-bc0.pdf, gs-bugzilla689309-reduced-bc1.pdf, gs-bugzilla689309-reduced.pdf, gs-bugzilla689931_reduced-Multiply.pdf, gs-bugzilla689931_reduced-Screen.pdf, gs-bugzilla689931_reduced-ScreenBlendPageBackground.pdf, gs-bugzilla690022-reduced-rotations-cropbox.pdf, gs-bugzilla690022-reduced-rotations.pdf, gs-bugzilla690022_reduced.pdf, gs-bugzilla691157.pdf, gs-bugzilla691157_mod_unc.pdf, gs-bugzilla691157_mod_unc.png, gs-bugzilla691348.pdf, gs-bugzilla691650-2.pdf, gs-bugzilla692217_reduced.pdf, gs-bugzilla693134-giant-pattern-reduced.pdf, gs-bugzilla693322_reduced.pdf, gs-bugzilla694556-3.pdf, gs-bugzilla695354.pdf, gs-bugzilla695582-transparency-fill-stroke.pdf, gs-bugzilla695582-transparency-fill-stroke.pdf-1.png, isolation.pdf, nonisolated_groups_patch.zip, pop-bugzilla40164.pdf, samsung_galaxy_s_4_um-p1_reduced.pdf, snowman-nose-gradient-rgb.pdf, snowman-nose-gradient-rgb_reduced-0.6-bad2.pdf, snowman-nose-gradient-rgb_reduced-0.7-good2.pdf, snowman-nose-gradient-screenshot-comparison-11.12.2016.jpg, snowman-nose-gradient.pdf, snowmen-opacity-clipping-masks-2.0.3.png, snowmen-opacity-clipping-masks-2.1-SNAPSHOT-10.12.2016.png, snowmen-opacity-clipping-masks-2.1.0-SNAPSHOT-2016-12-07.png, snowmen-opacity-clipping-masks-adobe-illustrator.png, snowmen-opacity-clipping-masks.pdf, softmask-rewrite-alt1.patch, softmask-rewrite.patch
>
>
> This is a follow-up issue for transparency group issues from PDFBOX-2423. More details to come.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@pdfbox.apache.org
For additional commands, e-mail: dev-help@pdfbox.apache.org