GNOME Bugzilla – Bug 79812
Additional chinese font encodings for Solaris
Last modified: 2004-12-22 21:47:04 UTC
(Perhaps exclusively)on Solaris platform, more chinese character sets support are needed by createing a separate chinese x11 shaper module, which should solve the problems described below. Big5 fonts: Solaris uses "big5-1" for BIG5 encoded fonts, while "big5-0" is used in the current pango basic X11 shaper. CNS11643 fonts: "cns11643-*" fonts should be primary used in zh_TW.euc locales GBK fonts "gbk-0" fonts should be primary used in zh_CN.gbk locales GB18030 fonts: "gb18030.2000-*" fonts should be primary used in zh_CN.gbk locales.
Putting on the 1.2 milestone, since 1.0.x is bugfix only.
We may add these charsets into basic x shaper instead of creating a separete chinese shaper. If that's the case, can we do this on the 1.0.3 milestone?
If it doesn't involve too drastic changes, yes that would be possible. (Note that Pango-1.2 is not that far ahead ... or that different ... it's planned to go along with GTK+-2.2, so it should be pretty much frozen before the end of May.)
Owen, I have added GB18030 (gb18030.2000-0 and gb18030.2000-1), GBK (gbk-0), CNS11643 (cns11643-1, cns11643-2 and cns11643-3) and HKSCS (hkscs-1) to the basic module, please see the patch I created for the basic-x.c and tables-big.i. I will send you the maps that I used to generate the tables-big.i in another e-mail, please let me know if you need any more information. The following can be added into the ChangLog: ---------------------------------- Tue Apr 30 18:25:08 2002 Qingjiang Yuan <brian.yuan@sun.com> * modules/basic/basic-x.c modules/basic/tables-big.i: Add GB18030/HKSCS/CNS11643/GBK support. (#79812) ---------------------------------- Best Regards. Brian.
Created attachment 8103 [details] [review] GB18030/GBK/CNS11643/HKSCS support
The following lines should be added into the pangox.aliases in order to render HKSCS/GB18030/CNS11643/KSX1005(KSC5601.1992-3)for this bug and bug #78575 in Solaris: -*-song-medium-r-normal--*-*-*-*-*-*-*-*,\ -*-sung-medium-r-normal--*-*-*-*-*-*-*-*,\ -*-myeongjo-medium-r-normal--*-*-*-*-*-*-*-*,\
Okay to commit? - I'd integrate this into 1.2.0 for sure -so the commit should be done any time soon - right? (same comments as korean's bugzilla - #78575)
retarget this for 1.0.3 - since the fix was made as a pure bug fix from 1.0.1. Okay to commit today or tomorrow?
Two comments: a) All the entries in charset_orderings should have the same total number of entries ... what the language tags shuold influence is only the ordering, not the set of fonts that might be used. b) Just to check, is it really the case that for: + { 25, "EUC-TW", "cns11643-2", conv_euctw }, + { 26, "EUC-TW", "cns11643-3", conv_euctw }, The cns11643-2 and -3 fonts are non-overlapping subsets encoded in the same fashion?
Sorry for late reply, I was on vacation last month. No problem to have the same number of entries in the charset_orderings, I didn't put Chinese characters in ko and ja because I think the performance might be better without checking so many useless entries. Yes, the cns11643-2 and -3 are encoded in the same fashion, only the first two bytes are different, after converting a Unicode to CNS11643, the third and fourth bytes are enough to locate the glyph in each of the CNS11643 fonts. We don't need the first two bytes because one Unicode character only belongs to at most one of the CNS11643 planes, and it's taken care by the three CNS11643<->Unicode mapping tables: cns11643-1, cns11643-2 and cns11643-3.
Created attachment 9933 [details] [review] Update patche, please ignore the previous one
Applied the patch to HEAD and stable. Fri Jul 26 19:46:45 2002 Owen Taylor <otaylor@redhat.com> * modules/basic/basic-x.c modules/basic/tables-big.i: Patch fromm Qingjiang (Brian) Yuan adding support for GB-18030, BIG5-HKSCS, CNS-11643 and GBK encodings. Also fix wrong encoding for Big5 fonts and look for big5-1 as well as big5-0 for the encoding name.