RFR: 8218973: SVG with masking is not rendering image with mask effect [v13]

Arun Joseph ajoseph at openjdk.java.net
Thu Sep 17 06:31:47 UTC 2020


On Mon, 14 Sep 2020 13:47:28 GMT, Bhawesh Choudhary <bchoudhary at openjdk.org> wrote:

>> Root cause of issue is Specifying a image mask from GraphicsContextJava.cpp in WebKit was not implemented, so masking
>> doesn't take place at all while rendering SVGRect. to fix this issue add implementation of function clipToImageBuffer()
>> in GraphicsContextJava.cpp and send clip image to WCGraphicsPrismContext.java  While rendering in
>> WCGraphicsPrismContext.java if image clip mask is available, use it for rendering using MaskTextureGraphics interface
>> otherwise use usual way of rendering.
>
> Bhawesh Choudhary has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Updates as per review comments

The fix works when the shape is displayed initially on the screen, but fails when we scroll the image off-screen and
then, back. To see the issue, you need to either rotate the gradient transform (by 90 degrees) or use a circle (any
shape other than a rectangle) as the mask shape, as this bug can't be seen using a mask rectangle.

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

PR: https://git.openjdk.java.net/jfx/pull/213


More information about the openjfx-dev mailing list