00001 /* $Id: unicode.h 11981 2008-01-25 13:48:39Z peter1138 $ */ 00002 00003 00004 struct DefaultUnicodeMapping { 00005 WChar code; 00006 byte key; 00007 }; 00008 00009 enum { 00010 CLRA = 0, 00011 CLRL = 1, 00012 }; 00013 00014 /* Default unicode mapping table for sprite based glyphs. 00015 * This table allows us use unicode characters even though the glyphs don't 00016 * exist, or are in the wrong place, in the standard sprite fonts. 00017 * This is not used for FreeType rendering */ 00018 00019 static DefaultUnicodeMapping _default_unicode_map[] = { 00020 { 0x00A0, 0x20 }, /* Non-breaking space / Up arrow */ 00021 { 0x00A4, CLRL }, /* Currency sign */ 00022 { 0x00A6, CLRL }, /* Broken bar */ 00023 { 0x00A7, CLRL }, /* Section sign */ 00024 { 0x00A8, CLRL }, /* Diaeresis */ 00025 { 0x00A9, CLRL }, /* Copyright sign */ 00026 { 0x00AA, CLRA }, /* Feminine ordinal indicator / Down arrow */ 00027 { 0x00AC, CLRA }, /* Not sign / Tick mark */ 00028 { 0x00AD, 0x20 }, /* Soft hyphen / X mark */ 00029 { 0x00AF, CLRA }, /* Macron / Right arrow */ 00030 { 0x00B0, CLRL }, /* Degree sign */ 00031 { 0x00B1, CLRL }, /* Plus-Minus sign */ 00032 { 0x00B2, CLRL }, /* Superscript 2 */ 00033 { 0x00B3, CLRL }, /* Superscript 3 */ 00034 { 0x00B4, CLRA }, /* Acute accent / Train symbol */ 00035 { 0x00B5, CLRA }, /* Micro sign / Truck symbol */ 00036 { 0x00B6, CLRA }, /* Pilcrow sign / Bus symbol */ 00037 { 0x00B7, CLRA }, /* Middle dot / Aircraft symbol */ 00038 { 0x00B8, CLRA }, /* Cedilla / Ship symbol */ 00039 { 0x00B9, CLRA }, /* Superscript 1 / Superscript -1 */ 00040 { 0x00BA, CLRL }, /* Masculine ordinal indicator */ 00041 { 0x00BC, CLRA }, /* One quarter / Small up arrow */ 00042 { 0x00BD, CLRA }, /* One half / Small down arrow */ 00043 { 0x00BE, CLRL }, /* Three quarters */ 00044 { 0x00D0, CLRL }, /* Capital letter eth */ 00045 { 0x00D7, CLRL }, /* Multiplication sign */ 00046 { 0x00D8, CLRL }, /* Capital letter O with stroke */ 00047 { 0x00D9, CLRL }, /* Capital letter U with grave */ 00048 { 0x00DE, CLRL }, /* Capital letter thorn */ 00049 { 0x00E6, CLRL }, /* Small letter ae */ 00050 { 0x00F0, CLRL }, /* Small letter eth */ 00051 { 0x00F7, CLRL }, /* Divison sign */ 00052 { 0x00F8, CLRL }, /* Small letter o with stroke */ 00053 { 0x00FE, CLRL }, /* Small letter thorn */ 00054 { 0x0178, 0x9F }, /* Capital letter Y with diaeresis */ 00055 { 0x010D, 0x63 }, /* Small letter c with caron */ 00056 };