freetype-devel
[Top][All Lists]
Advanced

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

AW: [Devel] FNT encodings


From: Michael Pöttgen
Subject: AW: [Devel] FNT encodings
Date: Thu, 26 Jun 2003 14:29:30 +0200

You probably have other sources. Just in case:

The windows codepages (which most of the time contain more characters than
the corresponding iso8859 character sets) can be found under

http://www.microsoft.com/globaldev/reference/cphome.mspx


Michael

-----Ursprüngliche Nachricht-----
Von: address@hidden [mailto:address@hidden Im Auftrag
von Huw D M Davies
Gesendet: Donnerstag, 26. Juni 2003 12:53
An: address@hidden
Betreff: Re: [Devel] FNT encodings


On Thu, Jun 26, 2003 at 08:35:57AM +0200, Werner LEMBERG wrote:
> 
> Currently, FreeType always assigns a Unicode charmap to Windows FNT 
> fonts which is plain wrong.  The very problem is that the only 
> documentation of the FNT format I was able to find in the net doesn't 
> describe which values the encoding byte represents.
> 
> Has anybody more information?

Hi,

The charset byte has the same meaning as the tmCharSet member of Win32's
TEXTMETRIC structure
(http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/fontex
t_23eb.asp)

>From Wine's wingdi.h we have

#define ANSI_CHARSET          (BYTE)0   /* CP1252, ansi-0, iso8859-{1,15} */
#define DEFAULT_CHARSET       (BYTE)1
#define SYMBOL_CHARSET        (BYTE)2
#define SHIFTJIS_CHARSET      (BYTE)128 /* CP932 */
#define HANGEUL_CHARSET       (BYTE)129 /* CP949, ksc5601.1987-0 */
#define HANGUL_CHARSET        HANGEUL_CHARSET
#define GB2312_CHARSET        (BYTE)134 /* CP936, gb2312.1980-0 */
#define CHINESEBIG5_CHARSET   (BYTE)136 /* CP950, big5.et-0 */
#define GREEK_CHARSET         (BYTE)161 /* CP1253 */
#define TURKISH_CHARSET       (BYTE)162 /* CP1254, -iso8859-9 */
#define HEBREW_CHARSET        (BYTE)177 /* CP1255, -iso8859-8 */
#define ARABIC_CHARSET        (BYTE)178 /* CP1256, -iso8859-6 */
#define BALTIC_CHARSET        (BYTE)186 /* CP1257, -iso8859-13 */
#define VIETNAMESE_CHARSET    (BYTE)163 /* CP1258 */
#define RUSSIAN_CHARSET       (BYTE)204 /* CP1251, -iso8859-5 */
#define EE_CHARSET            (BYTE)238 /* CP1250, -iso8859-2 */
#define EASTEUROPE_CHARSET    EE_CHARSET
#define THAI_CHARSET          (BYTE)222 /* CP874, iso8859-11, tis620 */
#define JOHAB_CHARSET         (BYTE)130 /* korean (johab) CP1361 */
#define MAC_CHARSET           (BYTE)77
#define OEM_CHARSET           (BYTE)255

Hope this helps,

Huw.

_______________________________________________
Devel mailing list
address@hidden http://www.freetype.org/mailman/listinfo/devel




reply via email to

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