From: "Frank Yung-Fong Tang" <[EMAIL PROTECTED]>
> It is not that easy for you from "don't know beans about fonts" to
> "creat a test font that contains ... \u20050". If you are lucky, it will
> take you several month if not year. There are commercial base font tool.
> But I am not sure they support 32 bits cmap or not (probably not).

According to:
http://www.microsoft.com/typography/otspec/cmap.htm

The so-called "Microsoft Unicode" cmap format 4 (platfom id=3, encoding
id=1) is the one recommanded for all fonts, except those than need to encode
supplementary planes.

Format 0 is deprecated (was used to map 8-bit encodings to glyph ids), as
well as now Format 2 (was used to map DBCS encodings with leadbyte/trail
bytes in East Asia, as a mix of 8 and 16 bit codes)

For supplementary planes, like a font built to support GB18030, the cmap
format 12 must be used instead with the same platform id, but the encoding
id 10 (UCS-4).

Format 8 is used to create a mix of 16-bit and 32-bit maps (with the
assumption that no 16bit Unicode character will have the same code point as
the highest 16-bit of a character out of the BMP, meaning that it works as
long as there's no glyph to assign for Unicode codepoints X between U+0000
and U+0010 simultaneously with codepoints between X<<16 and (X+1)<<16 -
1).This compresses a bit the size of the cmap.

Format 10 is not portable unlike format 12 which must be provided in
addition to the recommanded format 4 for characters present in the BMP. In
practice, this format is used mostly for GB18030 support, and supported by
Windows 2000 and later. So you won't have to wait for years to create a
GB18030 font, using UCS-4 mappings...


Reply via email to