What you could try is to extend getNonStrokingPaint and getStrokingPaint and set both values to 1 (that is the default if no ca/CA entry exists) with setAlphaConstant() and setNonStrokeAlphaConstant().

If that doesn't work, then modify the PDF by going through the page resources recursively and change the ExtGState objects. (resources.getExtGStateNames() and resources.getExtGState). Do this also for form XObjects (and more).

Tilman

On 13.05.2023 20:11, Tres Finocchiaro wrote:

    > This ("ca") applies to the thin line and may be the cause of the
    rasterization.


 That seems to be the culprit, thanks!

We worked together in the past to coerce documents into never rasterizing... the fix we had originally written a workaround to removing transparent layers.

https://issues.apache.org/jira/browse/PDFBOX-4123?focusedCommentId=17529733&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-17529733 <https://issues.apache.org/jira/browse/PDFBOX-4123?focusedCommentId=17529733&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-17529733>

I understand that this is slightly off-topic, but can additional logical improvements be made to that logic to help with scenarios like this?  Assuming the answer is yes, should I start a new email thread (or bug report) about this?

In regards to the originating issue (the second page), I'll re-test with the "CA 1" entry removed.

-Tres

image.png

Reply via email to