[OpenJDK 2D-Dev] [13] JDK-8219901: Noto fonts for East Asian countries cannot belong to CompositeFont

Jayathirth Rao jayathirth.d.v at oracle.com
Thu Apr 4 11:44:37 UTC 2019


Hi,

I am also taking a look at this.
I will update my observations soon.

Thanks,
Jay

> On 04-Apr-2019, at 8:23 AM, Philip Race <philip.race at oracle.com> wrote:
> 
> I will get back to this soon but you will still need a 2nd reviewer.
> 
> -phil.
> 
> On 3/25/19, 12:29 AM, Toshio 5 Nakamura wrote:
>> 
>> Hi Phil,
>>  
>> Just a gentle reminder, I appreciate it if you have a time to look at this.
>>  
>> Thanks,
>> Toshio Nakamura
>>  
>> ----- Original message -----
>> From: "Toshio 5 Nakamura" <TOSHIONA at jp.ibm.com> <mailto:TOSHIONA at jp.ibm.com>
>> Sent by: "2d-dev" <2d-dev-bounces at openjdk.java.net> <mailto:2d-dev-bounces at openjdk.java.net>
>> To: Philip Race <philip.race at oracle.com> <mailto:philip.race at oracle.com>
>> Cc: 2d-dev <2d-dev at openjdk.java.net> <mailto:2d-dev at openjdk.java.net>
>> Subject: Re: [OpenJDK 2D-Dev] [13] JDK-8219901: Noto fonts for East Asian countries cannot belong to CompositeFont
>> Date: Mon, Mar 11, 2019 9:58 PM
>> Hi Phil,
>> 
>> Thank you so much for your reviewing.
>> 
>> Yes, "family" part can be removed with a few changes in
>> "src/java.desktop/unix/classes/sun/awt/FcFontManager.java".
>> 
>> The updated webrev is:
>> http://cr.openjdk.java.net/~tnakamura/8219901/webrev.01 <http://cr.openjdk.java.net/%7Etnakamura/8219901/webrev.01>/
>> 
>> >  So you don't need to clean everything - just your develop -internal
>> > and -ea folders.
>> Yes, thank you for the clarification.
>> 
>> Thanks,
>> Toshio Nakamura
>> 
>> Philip Race <philip.race at oracle.com> <mailto:philip.race at oracle.com> wrote on 2019/03/10 18:05:18:
>> 
>> > From: Philip Race <philip.race at oracle.com> <mailto:philip.race at oracle.com>
>> > To: Toshio 5 Nakamura <TOSHIONA at jp.ibm.com> <mailto:TOSHIONA at jp.ibm.com>
>> > Cc: 2d-dev <2d-dev at openjdk.java.net> <mailto:2d-dev at openjdk.java.net>
>> > Date: 2019/03/10 18:05
>> > Subject: Re: [OpenJDK 2D-Dev] [13] JDK-8219901: Noto fonts for East
>> > Asian countries cannot belong to CompositeFont
>> >
>> > I can sponsor this but first :
>> >
>> > You seem to have made "family" redundant but aren't removing it.
>> > There's no point in writing it out if nothing uses it on reading.
>> > So we should remove it unless you can explain why you think it should be kept.
>> >
>> > I don't think this (removing it) is a problem for backports or
>> > compatibility of the
>> > format since release name is part of the file name where we write
>> > the information,
>> > and such a file name will necessarily be a consequence of a feature
>> > or update release
>> > containing this fix.
>> >
>> > Where it might be an issue is testing on 13-ea builds since they all report
>> > that as the version string so for testing you may need to clean out your
>> > ~/.java/fonts/13-ea folder. The same is for your 13-internal private builds.
>> >
>> > I think this is your point when you wrote :-
>> >
>> >> The cached font list is stored under ~/.java/fonts directory.
>> >> We should delete it before applying the fix.
>> >
>> >  So you don't need to clean everything - just your develop -internal
>> > and -ea folders.
>> >
>> > Meanwhile I tested it .. and it seemed OK but I am still trying to join
>> > up all the dots to make sure it is all correct code-wise.
>> >
>> > -phil
>> >
>> > On 2/28/19, 3:21 PM, Toshio 5 Nakamura wrote: 
>> > Hi,
>> >
>> > Could you review the fix and may I have a sponsor for it?
>> >
>> > Bug: https://bugs.openjdk.java.net/browse/JDK-8219901 <https://bugs.openjdk.java.net/browse/JDK-8219901>
>> > Webrev: http://cr.openjdk.java.net/~tnakamura/8219901/webrev.00/ <http://cr.openjdk.java.net/%7Etnakamura/8219901/webrev.00/>
>> >
>> > Issue:
>> > Even if Google Noto fonts[1] were installed and listed by fontconfig library
>> > on Linux, CompositeFont couldn't contain it.
>> >
>> > Fix description:
>> > "src/java.desktop/share/classes/sun/font/CompositeFont.java" (l. 296)
>> > validates the target font by comparing names. But, the current code
>> > compared FamilyName with FullName (Font.getFontName()).
>> > Then, Noto font was treated as invalid.
>> > "src/java.desktop/unix/classes/sun/font/FcFontConfiguration.java"
>> > should provide FullName.
>> >
>> > The cached font list is stored under ~/.java/fonts directory.
>> > We should delete it before applying the fix.
>> >
>> > This fix is possible to change the default font, if CompositeFont
>> > is used (especially under Ubuntu18.04 and East Asian settings).
>> > But, I believe the fixed behavior is correct.
>> >
>> > [1] https://www.google.com/get/noto/ <https://www.google.com/get/noto/>
>> >
>> > Thanks,
>> > Toshio Nakamura
>> 
>>  
>> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/2d-dev/attachments/20190404/ab50101f/attachment.html>


More information about the 2d-dev mailing list