cheshirekow  v0.1.0
freetype::encoding Namespace Reference

An enumeration used to specify character sets supported by charmaps. Used in the FT_Select_Charmap API function. More...

Enumerations

enum  Encoding {
  NONE = EncTag<0,0,0,0>::value, MS_SYMBOL = EncTag<'s','y','m','b'>::value, UNICODE = EncTag<'u','n','i','c'>::value, SJIS = EncTag<'s','j','i','s'>::value,
  GB2312 = EncTag<'g','b',' ',' '>::value, BIG5 = EncTag<'b','i','g','5'>::value, WANSUNG = EncTag<'w','a','n','s'>::value, JOHAB = EncTag<'j','o','h','a'>::value,
  ADOBE_STANDARD = EncTag<'A','D','O','B'>::value, ADOBE_EXPERT = EncTag<'A','D','B','E'>::value, ADOBE_CUSTOM = EncTag<'A','D','B','C'>::value, ADOBE_LATIN_1 = EncTag<'l','a','t','1'>::value,
  OLD_LATIN_2 = EncTag<'l','a','t','2'>::value, APPLE_ROMAN = EncTag<'a', 'r', 'm', 'n'>::value
}
 An enumeration used to specify character sets supported by charmaps. Used in the FT_Select_Charmap API function. More...
 

Detailed Description

An enumeration used to specify character sets supported by charmaps. Used in the FT_Select_Charmap API function.

See Also
Encoding

Enumeration Type Documentation

An enumeration used to specify character sets supported by charmaps. Used in the FT_Select_Charmap API function.

Despite the name, this enumeration lists specific character repertories (i.e., charsets), and not text encoding methods (e.g., UTF-8, UTF-16, etc.).

Other encodings might be defined in the future.

Note
By default, FreeType automatically synthesizes a Unicode charmap for PostScript fonts, using their glyph names dictionaries. However, it also reports the encodings defined explicitly in the font file, for the cases when they are needed, with the Adobe values as well.

FT_ENCODING_NONE is set by the BDF and PCF drivers if the charmap is neither Unicode nor ISO-8859-1 (otherwise it is set to FT_ENCODING_UNICODE). Use FT_Get_BDF_Charset_ID to find out which encoding is really present. If, for example, the ‘cs_registry’ field is ‘KOI8’ and the ‘cs_encoding’ field is ‘R’, the font is encoded in KOI8-R.

FT_ENCODING_NONE is always set (with a single exception) by the winfonts driver. Use FT_Get_WinFNT_Header and examine the ‘charset’ field of the FT_WinFNT_HeaderRec structure to find out which encoding is really present. For example, FT_WinFNT_ID_CP1251 (204) means Windows code page 1251 (for Russian).

FT_ENCODING_NONE is set if ‘platform_id’ is TT_PLATFORM_MACINTOSH and ‘encoding_id’ is not TT_MAC_ID_ROMAN (otherwise it is set to FT_ENCODING_APPLE_ROMAN).

If ‘platform_id’ is TT_PLATFORM_MACINTOSH, use the function FT_Get_CMap_Language_ID to query the Mac language ID which may be needed to be able to distinguish Apple encoding variants. See

http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/README.TXT

to get an idea how to do that. Basically, if the language ID is 0, don't use it, otherwise subtract 1 from the language ID. Then examine ‘encoding_id’. If, for example, ‘encoding_id’ is TT_MAC_ID_ROMAN and the language ID (minus 1) is ‘TT_MAC_LANGID_GREEK’, it is the Greek encoding, not Roman. TT_MAC_ID_ARABIC with ‘TT_MAC_LANGID_FARSI’ means the Farsi variant the Arabic encoding.

Enumerator
NONE 

The encoding value 0 is reserved.

MS_SYMBOL 

Corresponds to the Microsoft Symbol encoding, used to encode mathematical symbols in the 32..255 character code range.

UNICODE 

Corresponds to the Unicode character set.

SJIS 

Corresponds to Japanese SJIS encoding.

GB2312 

Corresponds to an encoding system for Simplified Chinese as used used in mainland China.

BIG5 

Corresponds to an encoding system for Traditional Chinese as used in Taiwan and Hong Kong.

WANSUNG 

Corresponds to the Korean encoding system known as Wansung.

JOHAB 

The Korean standard character set (KS C 5601-1992), which corresponds to MS Windows code page 1361.

ADOBE_STANDARD 

Corresponds to the Adobe Standard encoding, as found in Type 1, CFF, and OpenType/CFF fonts.

It is limited to 256 character codes.

ADOBE_EXPERT 

Corresponds to the Adobe Expert encoding, as found in Type 1, CFF, and OpenType/CFF fonts.

ADOBE_CUSTOM 

Corresponds to a custom encoding, as found in Type 1, CFF, and OpenType/CFF fonts.

ADOBE_LATIN_1 

Corresponds to a Latin-1 encoding as defined in a Type 1 PostScript font.

OLD_LATIN_2 

This value is deprecated and was never used nor reported by FreeType. Don't use or test for it.

APPLE_ROMAN 

Corresponds to the 8-bit Apple roman encoding.

Definition at line 772 of file types.h.