Realizing a Logical Font

Realizing a Logical Font

On realizing a logical font, the Open32 NLS Extension calls GpiCreateLogFont to realize the matching font with the OS/2 codepage, which should be used as output language with that font for text processing.

┌────────────────────────────────────────┬────────────────────────────────────────┐
│Windows CharSet of the font of the      │OS/2 Codepage to be specified in FATTRS │
│closest match                           │                                        │
├────────────────────────────────────────┼────────────────────────────────────────┤
│EASTEUROPE_CHARSET                      │1250                                    │
├────────────────────────────────────────┼────────────────────────────────────────┤
│RUSSIAN_CHARSET                         │1251                                    │
├────────────────────────────────────────┼────────────────────────────────────────┤
│ANSI_CHARSET                            │1252                                    │
├────────────────────────────────────────┼────────────────────────────────────────┤
│GREEK_CHARSET                           │1253                                    │
├────────────────────────────────────────┼────────────────────────────────────────┤
│TURKISH_CHARSET                         │1254                                    │
├────────────────────────────────────────┼────────────────────────────────────────┤
│HEBREW_CHARSET                          │1255                                    │
├────────────────────────────────────────┼────────────────────────────────────────┤
│ARABIC_CHARSET                          │1256                                    │
├────────────────────────────────────────┼────────────────────────────────────────┤
│BALTIC_CHARSET                          │1257                                    │
├────────────────────────────────────────┼────────────────────────────────────────┤
│THAI_CHARSET                            │874                                     │
├────────────────────────────────────────┼────────────────────────────────────────┤
│DEFAULT_CHARSET                         │N/A (should never be happened)          │
├────────────────────────────────────────┼────────────────────────────────────────┤
│SYMBOL_CHARSET                          │0 (accept encoding in the font)         │
├────────────────────────────────────────┼────────────────────────────────────────┤
│SHIFTJIS_CHARSET                        │932 or 943 (See note)                   │
├────────────────────────────────────────┼────────────────────────────────────────┤
│HANGEUL_CHARSET                         │949                                     │
├────────────────────────────────────────┼────────────────────────────────────────┤
│JOHAB_CHARSET                           │1361                                    │
├────────────────────────────────────────┼────────────────────────────────────────┤
│GB2312_CHARSET                          │1381 (See note)                         │
├────────────────────────────────────────┼────────────────────────────────────────┤
│CHINESEBIG5_CHARSET                     │950                                     │
├────────────────────────────────────────┼────────────────────────────────────────┤
│OEM_CHARSET                             │SystemOEMCp                             │
└────────────────────────────────────────┴────────────────────────────────────────┘

Note: The definition of OS/2 codepage 932 (IBM Japanese) is slightly different from the definition of the Windows codepage 932. The fully compatible OS/2 codepage is 943. Use WinGetCpList to check if OS/2 codepage 943 is available in the system.

Note: The definition of OS/2 codepage 936 (IBM Simplified Chinese) is completely different from the definition of the Windows codepage 936. The fully compatible OS/2 codepage is 1381. Use OS/2 codepage 1381 whenever calling OS/2 PM function calls.


[Back: Selecting the Closest Match]
[Next: Returning TEXTMETRIC and NEWTEXTMETRIC]