[OpenJDK 2D-Dev] Possible solution for font-rendering issues in Windows

Philip Race philip.race at oracle.com
Sun Apr 28 17:14:18 UTC 2019



On 4/28/19, 8:25 AM, Peter Harvey wrote:
> Apologies if this is not the correct channel for this email.

It is, but if you want to send any more emails to this list, you will 
need to subscribe.
>
> From what I can tell, Freetype 2.7 contained a change in hint 
> processing that led to poorer quality font rendering on Windows. Any 
> OpenJDK distribution using Freetype 2.7 or higher (ie. most 
> distributions) will have poorer quality font rendering on Windows. I 
> may have found a solution to this issue but I am unable to add 
> comments to the relevant bugs:
>
> https://bugs.openjdk.java.net/browse/JDK-8217731
> https://bugs.openjdk.java.net/browse/JDK-8208377
> https://bugs.openjdk.java.net/browse/JDK-8214538
>
> As a temporary workaround, users of OpenJDK distributions can force 
> pre-2.7 font rendering by simply setting an environment variable:
>
>    FREETYPE_PROPERTIES=truetype:interpreter-version=35
>
> I've tested this workaround on OpenJDK distributions from Amazon, 
> Oracle, and AdoptOpenJDK.

Do you mean you specifically tested out exactly the issues & scenarios
listed in the above bug reports and found them all 100% reverted & cured ?
If not, please detail what exactly you see in each case when applying 
the property vs previous JDKs.
What version of Windows did you test, and did you test anything other 
than Windows ?



> Note that AdoptOpenJDK's distribution for Java 8 didn't require the 
> workaround because it appears to be using Freetype 2.5.3. A quick 
> Google for "truetype:interpreter-version=35" shows plenty of people in 
> other open-source communities (eg. Wine, Fedora) which encourage this 
> workaround for other software.
>
> A more permanent solution would be to change the default build process 
> for OpenJDK to set "truetype:interpreter-version=35" as the default 
> when compiling Freetype.

I have read freetype notes on this and it isn't clear whether we want to 
go against what it does by default.
And in any case, Oracle JDK switched from T2K to freetype in 11 so there 
can be differences due to that too.

It may be that Windows is the only platform on which this reversion is a 
good idea.
And in any case, on Linux + Solaris (not sure about other Unix-like 
distros) OpenJDK
currently uses the system freetype so a JDK build change for freetype 
wouldn't help.

>
> Please let me know if I can assist in any way.
>

The above requested information ..

-phil.

> Regards,
> Peter.
>
> -- 
> *Actenum Corporation*
> Peter Harvey  |  Cell: 780.729.8192  | harvey at actenum.com 
> <mailto:harvey at actenum.com>  | www.actenum.com <http://www.actenum.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/2d-dev/attachments/20190428/51d66981/attachment.html>


More information about the 2d-dev mailing list