[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-2d-dev
Subject:    Re: [OpenJDK 2D-Dev] [9] Review request for 8023794: [macosx] LCD Rendering hints seems not working 
From:       Phil Race <philip.race () oracle ! com>
Date:       2014-10-24 20:03:41
Message-ID: 544AB09D.5060805 () oracle ! com
[Download RAW message or body]

On 10/24/2014 10:56 AM, Andrew Brygin wrote:
> Hello,
>
>  please take a look to updated version of the fix:
>
> http://cr.openjdk.java.net/~bae/8023794/9/webrev.03/
>
>  TODOs were removed:
>  * CGLSurfaceData.java
>       the condition for lcd rendering is inherited from OGL surface 
> data, but
>       here we have to remove the check for the transparency, because 
> we always
>       create transparent  volatile images for swing backbuffers on 
> macosx in order
>       to support shaped windows.

Are you saying its created translucent regardless, or only if its shaped?
But if its really translucent/transparent under the text, then
IIRC the shaders - and s/w loops - do not properly handle that case.
You probably should try drawing LCD text over a fully transparent area
to see what happens.

>
> * * *CGGlyphImages.m and AWTStrike.m
>       NSException is used to  handle invalid (unevaluated) text 
> antialising hint values.
>       We actually have already used NSException to handle memory 
> allocation failure,
>       so this change just makes usage of get/release of primitive 
> arrays a bit more safe.
>
>
> Known differences comparing to apple jdk6:
>
> a) we do not interpret TEXT_ANTIALIASING_ON as lcd text.

Its should never have meant that, else you would have no way to explicitly
request grey scale.
>
> b) we do not render lcd text in a case of non-opaque paint. This 
> behavior is common for
>      all cases (software loops, OGL, and D3D), so it seems to deserve 
> a separate bug if we
>      want to handle this case.

I think that's another manifestation of the issue mentioned above.

-phil.

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic