RFR: 8148334: The regression case: java/awt/print/PrinterJob/PrintTextTest.java failed as the printed pages do not match the shown pages [v2]

Harshitha Onkar honkar at openjdk.org
Wed Nov 13 18:42:11 UTC 2024


On Fri, 8 Nov 2024 18:03:47 GMT, Daniel Gredler <duke at openjdk.org> wrote:

>> This PR fixes the issue identified in JDK-8148334 in screenshots `Page8_landscape.JPG` and `Page8_portrait.JPG`.
>> 
>> It does not address `mac_Page1.png` or `mac_Page8.png`, which I'm not even sure are still issues (I have no access to a Mac).
>> 
>> The method in question, `PathGraphics.printedSimpleGlyphVector(...)` is quite complex, with many special cases being handled in different ways. In this specific scenario (page 8 of `PrintTextTest`), all special case checks fail, and we fall through all the way to the final handling block, which draws the individual characters one by one. It looks like the problem is that the font transform translation is applied twice, once via the glyph positions, and again by `drawString(...)` via the font. The proposed fix is to provide `drawString(...)` a font without any translation transform.
>> 
>> Testing looks good on Linux, but needs to be done on Mac and Windows.
>
> Daniel Gredler has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Comment tweak ('advance' -> 'translation')

> @honkar-jdk This is the followup to PR https://github.com/openjdk/jdk/pull/21716 discussed last week. Do you have time to review and possibly test on Windows or mac? The change looks good for me on Linux.

Sure. I can check it on windows & macOS and get back to you.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/21980#issuecomment-2474443773


More information about the client-libs-dev mailing list