freetype-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ft-devel] [Patch] CJK autofit/autohint blue zones


From: JustFillBug
Subject: Re: [ft-devel] [Patch] CJK autofit/autohint blue zones
Date: Sat, 8 Jan 2011 11:01:42 +0000 (UTC)
User-agent: slrn/pre1.0.0-18 (Linux)

On 2011-01-08, address@hidden <address@hidden> wrote:
> I will take a look and try to make a list of
> frequently used CJK Unified Ideographs used in
> Japanese market.

That will be great.

>
> Your message lacks the character encoding - 
> I guess it is coded by GBK. If my guessing
> is correct... I think the list includes both
> of Traditional & Simplified Hanzi. Many are
> paired, but some are not paird. For example,
> simplified form of "military" (U+519B) is
> included, but traditional form (軍, U+8ECD)
> is not included.

GBK encoding is correct. I first made a simplified Chinese list, then
convert it to traditional Chinese (iconv -f gb2312 -t big5). After that,
duplicate chars are removed, also the unsuitable chars.

So other than the simpl/trad pairs, other chars are both traditional and
simplified. :)

>
> If a legacy Big5 font without any simplified
> Hanzi is given, this patch works well? Or,
> should we maintain another list for Big5?

It seems the CJK fitter first switches to Unicode cmap before doing it
work, in af_cjk_metrics_init().  Because it need to make sure the char
ranges it works on are CJK ideographs.

Therefore, a font without an unicode cmap don't likely get CJK
autofitter. That's just my guess.

>
> Also, U+8ECD is included in GB 12345-90,
> but not in GB 2312-80. If a legacy GB 2312
> font is given, this patch works well?
>

In af_cjk_metrics_init_blues(), if a char is not in a font, it's
skipped. The same is true for latin fitter. No problem with unknown
char.

The worst case is that none of the listed char are in the font. Then no
blue zone can be calculated. That way, the blue zone fitting will be
ignored.

Another bad scenario is that a bad blue zone is used, in that case,
hopefully, nothing bad happens. Blue zone works by align points that are
close enough to it and ignore far away points.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]