[autofit] Add blue-zone support for Devanagari.
This essentially moves the Devanagari script from the `Indic' hinter to the `Latin' hinter. Thanks to Girish Dalvi <girish.dalvi@gmail.com> for guidance with blue zone characters! * src/autofit/afblue.dat: Add blue zone data for Devanagari. * src/autofit/afblue.c, src/autofit/afblue.h: Regenerated. * src/autofit/afscript.h: Add Devanagari standard characters and move data out of AF_CONFIG_OPTION_INDIC block. * src/autofit/afranges.c: Move Devanagari data out of AF_CONFIG_OPTION_INDIC block. Move U+20B9, (new) Rupee sign, from Latin to Devanagari. * src/autofit/afstyles.h: Update Devanagari data; in particular, use AF_WRITING_SYSTEM_LATIN.
This commit is contained in:
parent
63bef9a588
commit
c576bb0d21
22
ChangeLog
22
ChangeLog
|
@ -1,3 +1,25 @@
|
||||||
|
2014-05-01 Werner Lemberg <wl@gnu.org>
|
||||||
|
|
||||||
|
[autofit] Add blue-zone support for Devanagari.
|
||||||
|
|
||||||
|
This essentially moves the Devanagari script from the `Indic' hinter
|
||||||
|
to the `Latin' hinter. Thanks to Girish Dalvi
|
||||||
|
<girish.dalvi@gmail.com> for guidance with blue zone characters!
|
||||||
|
|
||||||
|
* src/autofit/afblue.dat: Add blue zone data for Devanagari.
|
||||||
|
|
||||||
|
* src/autofit/afblue.c, src/autofit/afblue.h: Regenerated.
|
||||||
|
|
||||||
|
* src/autofit/afscript.h: Add Devanagari standard characters and
|
||||||
|
move data out of AF_CONFIG_OPTION_INDIC block.
|
||||||
|
|
||||||
|
* src/autofit/afranges.c: Move Devanagari data out of
|
||||||
|
AF_CONFIG_OPTION_INDIC block.
|
||||||
|
Move U+20B9, (new) Rupee sign, from Latin to Devanagari.
|
||||||
|
|
||||||
|
* src/autofit/afstyles.h: Update Devanagari data; in particular, use
|
||||||
|
AF_WRITING_SYSTEM_LATIN.
|
||||||
|
|
||||||
2014-05-01 Werner Lemberg <wl@gnu.org>
|
2014-05-01 Werner Lemberg <wl@gnu.org>
|
||||||
|
|
||||||
[autofit] Fix handling of neutral blue zones in stems.
|
[autofit] Fix handling of neutral blue zones in stems.
|
||||||
|
|
|
@ -26,15 +26,21 @@
|
||||||
af_blue_strings[] =
|
af_blue_strings[] =
|
||||||
{
|
{
|
||||||
/* */
|
/* */
|
||||||
'T', 'H', 'E', 'Z', 'O', 'C', 'Q', 'S', /* THEZOCQS */
|
'\xD0', '\x91', '\xD0', '\x92', '\xD0', '\x95', '\xD0', '\x9F', '\xD0', '\x97', '\xD0', '\x9E', '\xD0', '\xA1', '\xD0', '\xAD', /* БВЕПЗОСЭ */
|
||||||
'\0',
|
'\0',
|
||||||
'H', 'E', 'Z', 'L', 'O', 'C', 'U', 'S', /* HEZLOCUS */
|
'\xD0', '\x91', '\xD0', '\x92', '\xD0', '\x95', '\xD0', '\xA8', '\xD0', '\x97', '\xD0', '\x9E', '\xD0', '\xA1', '\xD0', '\xAD', /* БВЕШЗОСЭ */
|
||||||
'\0',
|
'\0',
|
||||||
'f', 'i', 'j', 'k', 'd', 'b', 'h', /* fijkdbh */
|
'\xD1', '\x85', '\xD0', '\xBF', '\xD0', '\xBD', '\xD1', '\x88', '\xD0', '\xB5', '\xD0', '\xB7', '\xD0', '\xBE', '\xD1', '\x81', /* хпншезос */
|
||||||
'\0',
|
'\0',
|
||||||
'x', 'z', 'r', 'o', 'e', 's', 'c', /* xzroesc */
|
'\xD1', '\x80', '\xD1', '\x83', '\xD1', '\x84', /* руф */
|
||||||
'\0',
|
'\0',
|
||||||
'p', 'q', 'g', 'j', 'y', /* pqgjy */
|
'\xE0', '\xA4', '\x95', '\xE0', '\xA4', '\xAE', '\xE0', '\xA4', '\x85', '\xE0', '\xA4', '\x86', '\xE0', '\xA4', '\xA5', '\xE0', '\xA4', '\xA7', '\xE0', '\xA4', '\xAD', '\xE0', '\xA4', '\xB6', /* क म अ आ थ ध भ श */
|
||||||
|
'\0',
|
||||||
|
'\xE0', '\xA4', '\x88', '\xE0', '\xA4', '\x90', '\xE0', '\xA4', '\x93', '\xE0', '\xA4', '\x94', '\xE0', '\xA4', '\xBF', '\xE0', '\xA5', '\x80', '\xE0', '\xA5', '\x8B', '\xE0', '\xA5', '\x8C', /* ई ऐ ओ औ ि ी ो ौ */
|
||||||
|
'\0',
|
||||||
|
'\xE0', '\xA4', '\x95', '\xE0', '\xA4', '\xAE', '\xE0', '\xA4', '\x85', '\xE0', '\xA4', '\x86', '\xE0', '\xA4', '\xA5', '\xE0', '\xA4', '\xA7', '\xE0', '\xA4', '\xAD', '\xE0', '\xA4', '\xB6', /* क म अ आ थ ध भ श */
|
||||||
|
'\0',
|
||||||
|
'\xE0', '\xA5', '\x81', '\xE0', '\xA5', '\x83', /* ु ृ */
|
||||||
'\0',
|
'\0',
|
||||||
'\xCE', '\x93', '\xCE', '\x92', '\xCE', '\x95', '\xCE', '\x96', '\xCE', '\x98', '\xCE', '\x9F', '\xCE', '\xA9', /* ΓΒΕΖΘΟΩ */
|
'\xCE', '\x93', '\xCE', '\x92', '\xCE', '\x95', '\xCE', '\x96', '\xCE', '\x98', '\xCE', '\x9F', '\xCE', '\xA9', /* ΓΒΕΖΘΟΩ */
|
||||||
'\0',
|
'\0',
|
||||||
|
@ -46,19 +52,21 @@
|
||||||
'\0',
|
'\0',
|
||||||
'\xCE', '\xB2', '\xCE', '\xB3', '\xCE', '\xB7', '\xCE', '\xBC', '\xCF', '\x81', '\xCF', '\x86', '\xCF', '\x87', '\xCF', '\x88', /* βγημρφχψ */
|
'\xCE', '\xB2', '\xCE', '\xB3', '\xCE', '\xB7', '\xCE', '\xBC', '\xCF', '\x81', '\xCF', '\x86', '\xCF', '\x87', '\xCF', '\x88', /* βγημρφχψ */
|
||||||
'\0',
|
'\0',
|
||||||
'\xD0', '\x91', '\xD0', '\x92', '\xD0', '\x95', '\xD0', '\x9F', '\xD0', '\x97', '\xD0', '\x9E', '\xD0', '\xA1', '\xD0', '\xAD', /* БВЕПЗОСЭ */
|
|
||||||
'\0',
|
|
||||||
'\xD0', '\x91', '\xD0', '\x92', '\xD0', '\x95', '\xD0', '\xA8', '\xD0', '\x97', '\xD0', '\x9E', '\xD0', '\xA1', '\xD0', '\xAD', /* БВЕШЗОСЭ */
|
|
||||||
'\0',
|
|
||||||
'\xD1', '\x85', '\xD0', '\xBF', '\xD0', '\xBD', '\xD1', '\x88', '\xD0', '\xB5', '\xD0', '\xB7', '\xD0', '\xBE', '\xD1', '\x81', /* хпншезос */
|
|
||||||
'\0',
|
|
||||||
'\xD1', '\x80', '\xD1', '\x83', '\xD1', '\x84', /* руф */
|
|
||||||
'\0',
|
|
||||||
'\xD7', '\x91', '\xD7', '\x93', '\xD7', '\x94', '\xD7', '\x97', '\xD7', '\x9A', '\xD7', '\x9B', '\xD7', '\x9D', '\xD7', '\xA1', /* בדהחךכםס */
|
'\xD7', '\x91', '\xD7', '\x93', '\xD7', '\x94', '\xD7', '\x97', '\xD7', '\x9A', '\xD7', '\x9B', '\xD7', '\x9D', '\xD7', '\xA1', /* בדהחךכםס */
|
||||||
'\0',
|
'\0',
|
||||||
'\xD7', '\x91', '\xD7', '\x98', '\xD7', '\x9B', '\xD7', '\x9D', '\xD7', '\xA1', '\xD7', '\xA6', /* בטכםסצ */
|
'\xD7', '\x91', '\xD7', '\x98', '\xD7', '\x9B', '\xD7', '\x9D', '\xD7', '\xA1', '\xD7', '\xA6', /* בטכםסצ */
|
||||||
'\0',
|
'\0',
|
||||||
'\xD7', '\xA7', '\xD7', '\x9A', '\xD7', '\x9F', '\xD7', '\xA3', '\xD7', '\xA5', /* קךןףץ */
|
'\xD7', '\xA7', '\xD7', '\x9A', '\xD7', '\x9F', '\xD7', '\xA3', '\xD7', '\xA5', /* קךןףץ */
|
||||||
|
'\0',
|
||||||
|
'T', 'H', 'E', 'Z', 'O', 'C', 'Q', 'S', /* THEZOCQS */
|
||||||
|
'\0',
|
||||||
|
'H', 'E', 'Z', 'L', 'O', 'C', 'U', 'S', /* HEZLOCUS */
|
||||||
|
'\0',
|
||||||
|
'f', 'i', 'j', 'k', 'd', 'b', 'h', /* fijkdbh */
|
||||||
|
'\0',
|
||||||
|
'x', 'z', 'r', 'o', 'e', 's', 'c', /* xzroesc */
|
||||||
|
'\0',
|
||||||
|
'p', 'q', 'g', 'j', 'y', /* pqgjy */
|
||||||
#ifdef AF_CONFIG_OPTION_CJK
|
#ifdef AF_CONFIG_OPTION_CJK
|
||||||
'\0',
|
'\0',
|
||||||
'\xE4', '\xBB', '\x96', '\xE4', '\xBB', '\xAC', '\xE4', '\xBD', '\xA0', '\xE4', '\xBE', '\x86', '\xE5', '\x80', '\x91', '\xE5', '\x88', '\xB0', '\xE5', '\x92', '\x8C', '\xE5', '\x9C', '\xB0', /* 他们你來們到和地 */
|
'\xE4', '\xBB', '\x96', '\xE4', '\xBB', '\xAC', '\xE4', '\xBD', '\xA0', '\xE4', '\xBE', '\x86', '\xE5', '\x80', '\x91', '\xE5', '\x88', '\xB0', '\xE5', '\x92', '\x8C', '\xE5', '\x9C', '\xB0', /* 他们你來們到和地 */
|
||||||
|
@ -109,14 +117,21 @@
|
||||||
af_blue_stringsets[] =
|
af_blue_stringsets[] =
|
||||||
{
|
{
|
||||||
/* */
|
/* */
|
||||||
{ AF_BLUE_STRING_LATIN_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
|
{ AF_BLUE_STRING_CYRILLIC_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
|
||||||
{ AF_BLUE_STRING_LATIN_CAPITAL_BOTTOM, 0 },
|
{ AF_BLUE_STRING_CYRILLIC_CAPITAL_BOTTOM, 0 },
|
||||||
{ AF_BLUE_STRING_LATIN_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
|
{ AF_BLUE_STRING_CYRILLIC_SMALL, AF_BLUE_PROPERTY_LATIN_TOP |
|
||||||
{ AF_BLUE_STRING_LATIN_SMALL, AF_BLUE_PROPERTY_LATIN_TOP |
|
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
|
||||||
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
|
{ AF_BLUE_STRING_CYRILLIC_SMALL, 0 },
|
||||||
{ AF_BLUE_STRING_LATIN_SMALL, 0 },
|
{ AF_BLUE_STRING_CYRILLIC_SMALL_DESCENDER, 0 },
|
||||||
{ AF_BLUE_STRING_LATIN_SMALL_DESCENDER, 0 },
|
{ AF_BLUE_STRING_MAX, 0 },
|
||||||
{ AF_BLUE_STRING_MAX, 0 },
|
{ AF_BLUE_STRING_DEVANAGARI_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
|
||||||
|
{ AF_BLUE_STRING_DEVANAGARI_HEAD, AF_BLUE_PROPERTY_LATIN_TOP },
|
||||||
|
{ AF_BLUE_STRING_DEVANAGARI_BASE, AF_BLUE_PROPERTY_LATIN_TOP |
|
||||||
|
AF_BLUE_PROPERTY_LATIN_NEUTRAL |
|
||||||
|
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
|
||||||
|
{ AF_BLUE_STRING_DEVANAGARI_BASE, 0 },
|
||||||
|
{ AF_BLUE_STRING_DEVANAGARI_BOTTOM, 0 },
|
||||||
|
{ AF_BLUE_STRING_MAX, 0 },
|
||||||
{ AF_BLUE_STRING_GREEK_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
|
{ AF_BLUE_STRING_GREEK_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
|
||||||
{ AF_BLUE_STRING_GREEK_CAPITAL_BOTTOM, 0 },
|
{ AF_BLUE_STRING_GREEK_CAPITAL_BOTTOM, 0 },
|
||||||
{ AF_BLUE_STRING_GREEK_SMALL_BETA_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
|
{ AF_BLUE_STRING_GREEK_SMALL_BETA_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
|
||||||
|
@ -125,18 +140,19 @@
|
||||||
{ AF_BLUE_STRING_GREEK_SMALL, 0 },
|
{ AF_BLUE_STRING_GREEK_SMALL, 0 },
|
||||||
{ AF_BLUE_STRING_GREEK_SMALL_DESCENDER, 0 },
|
{ AF_BLUE_STRING_GREEK_SMALL_DESCENDER, 0 },
|
||||||
{ AF_BLUE_STRING_MAX, 0 },
|
{ AF_BLUE_STRING_MAX, 0 },
|
||||||
{ AF_BLUE_STRING_CYRILLIC_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
|
|
||||||
{ AF_BLUE_STRING_CYRILLIC_CAPITAL_BOTTOM, 0 },
|
|
||||||
{ AF_BLUE_STRING_CYRILLIC_SMALL, AF_BLUE_PROPERTY_LATIN_TOP |
|
|
||||||
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
|
|
||||||
{ AF_BLUE_STRING_CYRILLIC_SMALL, 0 },
|
|
||||||
{ AF_BLUE_STRING_CYRILLIC_SMALL_DESCENDER, 0 },
|
|
||||||
{ AF_BLUE_STRING_MAX, 0 },
|
|
||||||
{ AF_BLUE_STRING_HEBREW_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
|
{ AF_BLUE_STRING_HEBREW_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
|
||||||
AF_BLUE_PROPERTY_LATIN_LONG },
|
AF_BLUE_PROPERTY_LATIN_LONG },
|
||||||
{ AF_BLUE_STRING_HEBREW_BOTTOM, 0 },
|
{ AF_BLUE_STRING_HEBREW_BOTTOM, 0 },
|
||||||
{ AF_BLUE_STRING_HEBREW_DESCENDER, 0 },
|
{ AF_BLUE_STRING_HEBREW_DESCENDER, 0 },
|
||||||
{ AF_BLUE_STRING_MAX, 0 },
|
{ AF_BLUE_STRING_MAX, 0 },
|
||||||
|
{ AF_BLUE_STRING_LATIN_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
|
||||||
|
{ AF_BLUE_STRING_LATIN_CAPITAL_BOTTOM, 0 },
|
||||||
|
{ AF_BLUE_STRING_LATIN_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
|
||||||
|
{ AF_BLUE_STRING_LATIN_SMALL, AF_BLUE_PROPERTY_LATIN_TOP |
|
||||||
|
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
|
||||||
|
{ AF_BLUE_STRING_LATIN_SMALL, 0 },
|
||||||
|
{ AF_BLUE_STRING_LATIN_SMALL_DESCENDER, 0 },
|
||||||
|
{ AF_BLUE_STRING_MAX, 0 },
|
||||||
#ifdef AF_CONFIG_OPTION_CJK
|
#ifdef AF_CONFIG_OPTION_CJK
|
||||||
{ AF_BLUE_STRING_CJK_TOP, AF_BLUE_PROPERTY_CJK_TOP },
|
{ AF_BLUE_STRING_CJK_TOP, AF_BLUE_PROPERTY_CJK_TOP },
|
||||||
{ AF_BLUE_STRING_CJK_BOTTOM, 0 },
|
{ AF_BLUE_STRING_CJK_BOTTOM, 0 },
|
||||||
|
|
|
@ -67,16 +67,28 @@
|
||||||
|
|
||||||
AF_BLUE_STRING_ENUM AF_BLUE_STRINGS_ARRAY AF_BLUE_STRING_MAX_LEN:
|
AF_BLUE_STRING_ENUM AF_BLUE_STRINGS_ARRAY AF_BLUE_STRING_MAX_LEN:
|
||||||
|
|
||||||
AF_BLUE_STRING_LATIN_CAPITAL_TOP
|
AF_BLUE_STRING_CYRILLIC_CAPITAL_TOP
|
||||||
"THEZOCQS"
|
"БВЕПЗОСЭ"
|
||||||
AF_BLUE_STRING_LATIN_CAPITAL_BOTTOM
|
AF_BLUE_STRING_CYRILLIC_CAPITAL_BOTTOM
|
||||||
"HEZLOCUS"
|
"БВЕШЗОСЭ"
|
||||||
AF_BLUE_STRING_LATIN_SMALL_F_TOP
|
AF_BLUE_STRING_CYRILLIC_SMALL
|
||||||
"fijkdbh"
|
"хпншезос"
|
||||||
AF_BLUE_STRING_LATIN_SMALL
|
AF_BLUE_STRING_CYRILLIC_SMALL_DESCENDER
|
||||||
"xzroesc"
|
"руф"
|
||||||
AF_BLUE_STRING_LATIN_SMALL_DESCENDER
|
|
||||||
"pqgjy"
|
// we separate the letters with spaces to avoid ligatures;
|
||||||
|
// this is just for convenience to simplify reading
|
||||||
|
AF_BLUE_STRING_DEVANAGARI_BASE
|
||||||
|
"क म अ आ थ ध भ श"
|
||||||
|
AF_BLUE_STRING_DEVANAGARI_TOP
|
||||||
|
"ई ऐ ओ औ ि ी ो ौ"
|
||||||
|
// note that some fonts have extreme variation in the height of the
|
||||||
|
// round head elements; for this reason we also define the `base'
|
||||||
|
// blue zone, which must be always present
|
||||||
|
AF_BLUE_STRING_DEVANAGARI_HEAD
|
||||||
|
"क म अ आ थ ध भ श"
|
||||||
|
AF_BLUE_STRING_DEVANAGARI_BOTTOM
|
||||||
|
"ु ृ"
|
||||||
|
|
||||||
AF_BLUE_STRING_GREEK_CAPITAL_TOP
|
AF_BLUE_STRING_GREEK_CAPITAL_TOP
|
||||||
"ΓΒΕΖΘΟΩ"
|
"ΓΒΕΖΘΟΩ"
|
||||||
|
@ -89,15 +101,6 @@ AF_BLUE_STRING_ENUM AF_BLUE_STRINGS_ARRAY AF_BLUE_STRING_MAX_LEN:
|
||||||
AF_BLUE_STRING_GREEK_SMALL_DESCENDER
|
AF_BLUE_STRING_GREEK_SMALL_DESCENDER
|
||||||
"βγημρφχψ"
|
"βγημρφχψ"
|
||||||
|
|
||||||
AF_BLUE_STRING_CYRILLIC_CAPITAL_TOP
|
|
||||||
"БВЕПЗОСЭ"
|
|
||||||
AF_BLUE_STRING_CYRILLIC_CAPITAL_BOTTOM
|
|
||||||
"БВЕШЗОСЭ"
|
|
||||||
AF_BLUE_STRING_CYRILLIC_SMALL
|
|
||||||
"хпншезос"
|
|
||||||
AF_BLUE_STRING_CYRILLIC_SMALL_DESCENDER
|
|
||||||
"руф"
|
|
||||||
|
|
||||||
AF_BLUE_STRING_HEBREW_TOP
|
AF_BLUE_STRING_HEBREW_TOP
|
||||||
"בדהחךכםס"
|
"בדהחךכםס"
|
||||||
AF_BLUE_STRING_HEBREW_BOTTOM
|
AF_BLUE_STRING_HEBREW_BOTTOM
|
||||||
|
@ -105,6 +108,17 @@ AF_BLUE_STRING_ENUM AF_BLUE_STRINGS_ARRAY AF_BLUE_STRING_MAX_LEN:
|
||||||
AF_BLUE_STRING_HEBREW_DESCENDER
|
AF_BLUE_STRING_HEBREW_DESCENDER
|
||||||
"קךןףץ"
|
"קךןףץ"
|
||||||
|
|
||||||
|
AF_BLUE_STRING_LATIN_CAPITAL_TOP
|
||||||
|
"THEZOCQS"
|
||||||
|
AF_BLUE_STRING_LATIN_CAPITAL_BOTTOM
|
||||||
|
"HEZLOCUS"
|
||||||
|
AF_BLUE_STRING_LATIN_SMALL_F_TOP
|
||||||
|
"fijkdbh"
|
||||||
|
AF_BLUE_STRING_LATIN_SMALL
|
||||||
|
"xzroesc"
|
||||||
|
AF_BLUE_STRING_LATIN_SMALL_DESCENDER
|
||||||
|
"pqgjy"
|
||||||
|
|
||||||
#ifdef AF_CONFIG_OPTION_CJK
|
#ifdef AF_CONFIG_OPTION_CJK
|
||||||
|
|
||||||
AF_BLUE_STRING_CJK_TOP
|
AF_BLUE_STRING_CJK_TOP
|
||||||
|
@ -246,15 +260,24 @@ AF_BLUE_STRING_ENUM AF_BLUE_STRINGS_ARRAY AF_BLUE_STRING_MAX_LEN:
|
||||||
|
|
||||||
AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY AF_BLUE_STRINGSET_MAX_LEN:
|
AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY AF_BLUE_STRINGSET_MAX_LEN:
|
||||||
|
|
||||||
AF_BLUE_STRINGSET_LATN
|
AF_BLUE_STRINGSET_CYRL
|
||||||
{ AF_BLUE_STRING_LATIN_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
|
{ AF_BLUE_STRING_CYRILLIC_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
|
||||||
{ AF_BLUE_STRING_LATIN_CAPITAL_BOTTOM, 0 }
|
{ AF_BLUE_STRING_CYRILLIC_CAPITAL_BOTTOM, 0 }
|
||||||
{ AF_BLUE_STRING_LATIN_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
|
{ AF_BLUE_STRING_CYRILLIC_SMALL, AF_BLUE_PROPERTY_LATIN_TOP |
|
||||||
{ AF_BLUE_STRING_LATIN_SMALL, AF_BLUE_PROPERTY_LATIN_TOP |
|
AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
|
||||||
AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
|
{ AF_BLUE_STRING_CYRILLIC_SMALL, 0 }
|
||||||
{ AF_BLUE_STRING_LATIN_SMALL, 0 }
|
{ AF_BLUE_STRING_CYRILLIC_SMALL_DESCENDER, 0 }
|
||||||
{ AF_BLUE_STRING_LATIN_SMALL_DESCENDER, 0 }
|
{ AF_BLUE_STRING_MAX, 0 }
|
||||||
{ AF_BLUE_STRING_MAX, 0 }
|
|
||||||
|
AF_BLUE_STRINGSET_DEVA
|
||||||
|
{ AF_BLUE_STRING_DEVANAGARI_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
|
||||||
|
{ AF_BLUE_STRING_DEVANAGARI_HEAD, AF_BLUE_PROPERTY_LATIN_TOP }
|
||||||
|
{ AF_BLUE_STRING_DEVANAGARI_BASE, AF_BLUE_PROPERTY_LATIN_TOP |
|
||||||
|
AF_BLUE_PROPERTY_LATIN_NEUTRAL |
|
||||||
|
AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
|
||||||
|
{ AF_BLUE_STRING_DEVANAGARI_BASE, 0 }
|
||||||
|
{ AF_BLUE_STRING_DEVANAGARI_BOTTOM, 0 }
|
||||||
|
{ AF_BLUE_STRING_MAX, 0 }
|
||||||
|
|
||||||
AF_BLUE_STRINGSET_GREK
|
AF_BLUE_STRINGSET_GREK
|
||||||
{ AF_BLUE_STRING_GREEK_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
|
{ AF_BLUE_STRING_GREEK_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
|
||||||
|
@ -266,15 +289,6 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY AF_BLUE_STRINGSET_MAX_LEN:
|
||||||
{ AF_BLUE_STRING_GREEK_SMALL_DESCENDER, 0 }
|
{ AF_BLUE_STRING_GREEK_SMALL_DESCENDER, 0 }
|
||||||
{ AF_BLUE_STRING_MAX, 0 }
|
{ AF_BLUE_STRING_MAX, 0 }
|
||||||
|
|
||||||
AF_BLUE_STRINGSET_CYRL
|
|
||||||
{ AF_BLUE_STRING_CYRILLIC_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
|
|
||||||
{ AF_BLUE_STRING_CYRILLIC_CAPITAL_BOTTOM, 0 }
|
|
||||||
{ AF_BLUE_STRING_CYRILLIC_SMALL, AF_BLUE_PROPERTY_LATIN_TOP |
|
|
||||||
AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
|
|
||||||
{ AF_BLUE_STRING_CYRILLIC_SMALL, 0 }
|
|
||||||
{ AF_BLUE_STRING_CYRILLIC_SMALL_DESCENDER, 0 }
|
|
||||||
{ AF_BLUE_STRING_MAX, 0 }
|
|
||||||
|
|
||||||
AF_BLUE_STRINGSET_HEBR
|
AF_BLUE_STRINGSET_HEBR
|
||||||
{ AF_BLUE_STRING_HEBREW_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
|
{ AF_BLUE_STRING_HEBREW_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
|
||||||
AF_BLUE_PROPERTY_LATIN_LONG }
|
AF_BLUE_PROPERTY_LATIN_LONG }
|
||||||
|
@ -282,6 +296,16 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY AF_BLUE_STRINGSET_MAX_LEN:
|
||||||
{ AF_BLUE_STRING_HEBREW_DESCENDER, 0 }
|
{ AF_BLUE_STRING_HEBREW_DESCENDER, 0 }
|
||||||
{ AF_BLUE_STRING_MAX, 0 }
|
{ AF_BLUE_STRING_MAX, 0 }
|
||||||
|
|
||||||
|
AF_BLUE_STRINGSET_LATN
|
||||||
|
{ AF_BLUE_STRING_LATIN_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
|
||||||
|
{ AF_BLUE_STRING_LATIN_CAPITAL_BOTTOM, 0 }
|
||||||
|
{ AF_BLUE_STRING_LATIN_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
|
||||||
|
{ AF_BLUE_STRING_LATIN_SMALL, AF_BLUE_PROPERTY_LATIN_TOP |
|
||||||
|
AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
|
||||||
|
{ AF_BLUE_STRING_LATIN_SMALL, 0 }
|
||||||
|
{ AF_BLUE_STRING_LATIN_SMALL_DESCENDER, 0 }
|
||||||
|
{ AF_BLUE_STRING_MAX, 0 }
|
||||||
|
|
||||||
#ifdef AF_CONFIG_OPTION_CJK
|
#ifdef AF_CONFIG_OPTION_CJK
|
||||||
|
|
||||||
AF_BLUE_STRINGSET_HANI
|
AF_BLUE_STRINGSET_HANI
|
||||||
|
|
|
@ -74,24 +74,28 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
typedef enum AF_Blue_String_
|
typedef enum AF_Blue_String_
|
||||||
{
|
{
|
||||||
AF_BLUE_STRING_LATIN_CAPITAL_TOP = 0,
|
AF_BLUE_STRING_CYRILLIC_CAPITAL_TOP = 0,
|
||||||
AF_BLUE_STRING_LATIN_CAPITAL_BOTTOM = 9,
|
AF_BLUE_STRING_CYRILLIC_CAPITAL_BOTTOM = 17,
|
||||||
AF_BLUE_STRING_LATIN_SMALL_F_TOP = 18,
|
AF_BLUE_STRING_CYRILLIC_SMALL = 34,
|
||||||
AF_BLUE_STRING_LATIN_SMALL = 26,
|
AF_BLUE_STRING_CYRILLIC_SMALL_DESCENDER = 51,
|
||||||
AF_BLUE_STRING_LATIN_SMALL_DESCENDER = 34,
|
AF_BLUE_STRING_DEVANAGARI_BASE = 58,
|
||||||
AF_BLUE_STRING_GREEK_CAPITAL_TOP = 40,
|
AF_BLUE_STRING_DEVANAGARI_TOP = 83,
|
||||||
AF_BLUE_STRING_GREEK_CAPITAL_BOTTOM = 55,
|
AF_BLUE_STRING_DEVANAGARI_HEAD = 108,
|
||||||
AF_BLUE_STRING_GREEK_SMALL_BETA_TOP = 68,
|
AF_BLUE_STRING_DEVANAGARI_BOTTOM = 133,
|
||||||
AF_BLUE_STRING_GREEK_SMALL = 81,
|
AF_BLUE_STRING_GREEK_CAPITAL_TOP = 140,
|
||||||
AF_BLUE_STRING_GREEK_SMALL_DESCENDER = 98,
|
AF_BLUE_STRING_GREEK_CAPITAL_BOTTOM = 155,
|
||||||
AF_BLUE_STRING_CYRILLIC_CAPITAL_TOP = 115,
|
AF_BLUE_STRING_GREEK_SMALL_BETA_TOP = 168,
|
||||||
AF_BLUE_STRING_CYRILLIC_CAPITAL_BOTTOM = 132,
|
AF_BLUE_STRING_GREEK_SMALL = 181,
|
||||||
AF_BLUE_STRING_CYRILLIC_SMALL = 149,
|
AF_BLUE_STRING_GREEK_SMALL_DESCENDER = 198,
|
||||||
AF_BLUE_STRING_CYRILLIC_SMALL_DESCENDER = 166,
|
AF_BLUE_STRING_HEBREW_TOP = 215,
|
||||||
AF_BLUE_STRING_HEBREW_TOP = 173,
|
AF_BLUE_STRING_HEBREW_BOTTOM = 232,
|
||||||
AF_BLUE_STRING_HEBREW_BOTTOM = 190,
|
AF_BLUE_STRING_HEBREW_DESCENDER = 245,
|
||||||
AF_BLUE_STRING_HEBREW_DESCENDER = 203,
|
AF_BLUE_STRING_LATIN_CAPITAL_TOP = 256,
|
||||||
af_blue_1_1 = 213,
|
AF_BLUE_STRING_LATIN_CAPITAL_BOTTOM = 265,
|
||||||
|
AF_BLUE_STRING_LATIN_SMALL_F_TOP = 274,
|
||||||
|
AF_BLUE_STRING_LATIN_SMALL = 282,
|
||||||
|
AF_BLUE_STRING_LATIN_SMALL_DESCENDER = 290,
|
||||||
|
af_blue_1_1 = 295,
|
||||||
#ifdef AF_CONFIG_OPTION_CJK
|
#ifdef AF_CONFIG_OPTION_CJK
|
||||||
AF_BLUE_STRING_CJK_TOP = af_blue_1_1 + 1,
|
AF_BLUE_STRING_CJK_TOP = af_blue_1_1 + 1,
|
||||||
AF_BLUE_STRING_CJK_BOTTOM = af_blue_1_1 + 153,
|
AF_BLUE_STRING_CJK_BOTTOM = af_blue_1_1 + 153,
|
||||||
|
@ -149,11 +153,12 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
typedef enum AF_Blue_Stringset_
|
typedef enum AF_Blue_Stringset_
|
||||||
{
|
{
|
||||||
AF_BLUE_STRINGSET_LATN = 0,
|
AF_BLUE_STRINGSET_CYRL = 0,
|
||||||
AF_BLUE_STRINGSET_GREK = 7,
|
AF_BLUE_STRINGSET_DEVA = 6,
|
||||||
AF_BLUE_STRINGSET_CYRL = 14,
|
AF_BLUE_STRINGSET_GREK = 12,
|
||||||
AF_BLUE_STRINGSET_HEBR = 20,
|
AF_BLUE_STRINGSET_HEBR = 19,
|
||||||
af_blue_2_1 = 24,
|
AF_BLUE_STRINGSET_LATN = 23,
|
||||||
|
af_blue_2_1 = 30,
|
||||||
#ifdef AF_CONFIG_OPTION_CJK
|
#ifdef AF_CONFIG_OPTION_CJK
|
||||||
AF_BLUE_STRINGSET_HANI = af_blue_2_1 + 0,
|
AF_BLUE_STRINGSET_HANI = af_blue_2_1 + 0,
|
||||||
af_blue_2_1_1 = af_blue_2_1 + 2,
|
af_blue_2_1_1 = af_blue_2_1 + 2,
|
||||||
|
|
|
@ -28,6 +28,13 @@
|
||||||
AF_UNIRANGE_REC( 0UL, 0UL )
|
AF_UNIRANGE_REC( 0UL, 0UL )
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const AF_Script_UniRangeRec af_deva_uniranges[] =
|
||||||
|
{
|
||||||
|
AF_UNIRANGE_REC( 0x0900UL, 0x097FUL ), /* Devanagari */
|
||||||
|
AF_UNIRANGE_REC( 0x20B9UL, 0x20B9UL ), /* (new) Rupee sign */
|
||||||
|
AF_UNIRANGE_REC( 0UL, 0UL )
|
||||||
|
};
|
||||||
|
|
||||||
const AF_Script_UniRangeRec af_grek_uniranges[] =
|
const AF_Script_UniRangeRec af_grek_uniranges[] =
|
||||||
{
|
{
|
||||||
AF_UNIRANGE_REC( 0x0370UL, 0x03FFUL ), /* Greek and Coptic */
|
AF_UNIRANGE_REC( 0x0370UL, 0x03FFUL ), /* Greek and Coptic */
|
||||||
|
@ -57,7 +64,8 @@
|
||||||
AF_UNIRANGE_REC( 0x1E00UL, 0x1EFFUL ), /* Latin Extended Additional */
|
AF_UNIRANGE_REC( 0x1E00UL, 0x1EFFUL ), /* Latin Extended Additional */
|
||||||
AF_UNIRANGE_REC( 0x2000UL, 0x206FUL ), /* General Punctuation */
|
AF_UNIRANGE_REC( 0x2000UL, 0x206FUL ), /* General Punctuation */
|
||||||
AF_UNIRANGE_REC( 0x2070UL, 0x209FUL ), /* Superscripts and Subscripts */
|
AF_UNIRANGE_REC( 0x2070UL, 0x209FUL ), /* Superscripts and Subscripts */
|
||||||
AF_UNIRANGE_REC( 0x20A0UL, 0x20CFUL ), /* Currency Symbols */
|
AF_UNIRANGE_REC( 0x20A0UL, 0x20B8UL ), /* Currency Symbols ...*/
|
||||||
|
AF_UNIRANGE_REC( 0x20BAUL, 0x20CFUL ), /* ... except new Rupee sign */
|
||||||
AF_UNIRANGE_REC( 0x2150UL, 0x218FUL ), /* Number Forms */
|
AF_UNIRANGE_REC( 0x2150UL, 0x218FUL ), /* Number Forms */
|
||||||
AF_UNIRANGE_REC( 0x2460UL, 0x24FFUL ), /* Enclosed Alphanumerics */
|
AF_UNIRANGE_REC( 0x2460UL, 0x24FFUL ), /* Enclosed Alphanumerics */
|
||||||
AF_UNIRANGE_REC( 0x2C60UL, 0x2C7FUL ), /* Latin Extended-C */
|
AF_UNIRANGE_REC( 0x2C60UL, 0x2C7FUL ), /* Latin Extended-C */
|
||||||
|
@ -82,12 +90,6 @@
|
||||||
AF_UNIRANGE_REC( 0UL, 0UL )
|
AF_UNIRANGE_REC( 0UL, 0UL )
|
||||||
};
|
};
|
||||||
|
|
||||||
const AF_Script_UniRangeRec af_deva_uniranges[] =
|
|
||||||
{
|
|
||||||
AF_UNIRANGE_REC( 0x0900UL, 0x097FUL ), /* Devanagari */
|
|
||||||
AF_UNIRANGE_REC( 0UL, 0UL )
|
|
||||||
};
|
|
||||||
|
|
||||||
const AF_Script_UniRangeRec af_gujr_uniranges[] =
|
const AF_Script_UniRangeRec af_gujr_uniranges[] =
|
||||||
{
|
{
|
||||||
AF_UNIRANGE_REC( 0x0A80UL, 0x0AFFUL ), /* Gujarati */
|
AF_UNIRANGE_REC( 0x0A80UL, 0x0AFFUL ), /* Gujarati */
|
||||||
|
|
|
@ -31,6 +31,11 @@
|
||||||
HB_SCRIPT_CYRILLIC,
|
HB_SCRIPT_CYRILLIC,
|
||||||
0x43E, 0x41E, 0x0 ) /* оО */
|
0x43E, 0x41E, 0x0 ) /* оО */
|
||||||
|
|
||||||
|
SCRIPT( deva, DEVA,
|
||||||
|
"Devanagari",
|
||||||
|
HB_SCRIPT_DEVANAGARI,
|
||||||
|
0x920, 0x935, 0x91F ) /* ठ व ट */
|
||||||
|
|
||||||
SCRIPT( grek, GREK,
|
SCRIPT( grek, GREK,
|
||||||
"Greek",
|
"Greek",
|
||||||
HB_SCRIPT_GREEK,
|
HB_SCRIPT_GREEK,
|
||||||
|
@ -58,11 +63,6 @@
|
||||||
HB_SCRIPT_BENGALI,
|
HB_SCRIPT_BENGALI,
|
||||||
'o', 0x0, 0x0 ) /* XXX */
|
'o', 0x0, 0x0 ) /* XXX */
|
||||||
|
|
||||||
SCRIPT( deva, DEVA,
|
|
||||||
"Devanagari",
|
|
||||||
HB_SCRIPT_DEVANAGARI,
|
|
||||||
'o', 0x0, 0x0 ) /* XXX */
|
|
||||||
|
|
||||||
SCRIPT( gujr, GUJR,
|
SCRIPT( gujr, GUJR,
|
||||||
"Gujarati",
|
"Gujarati",
|
||||||
HB_SCRIPT_GUJARATI,
|
HB_SCRIPT_GUJARATI,
|
||||||
|
|
|
@ -81,7 +81,9 @@
|
||||||
DEFAULT )
|
DEFAULT )
|
||||||
|
|
||||||
META_STYLE_LATIN( cyrl, CYRL, "Cyrillic" )
|
META_STYLE_LATIN( cyrl, CYRL, "Cyrillic" )
|
||||||
|
|
||||||
META_STYLE_LATIN( grek, GREK, "Greek" )
|
META_STYLE_LATIN( grek, GREK, "Greek" )
|
||||||
|
|
||||||
STYLE( hebr_dflt, HEBR_DFLT,
|
STYLE( hebr_dflt, HEBR_DFLT,
|
||||||
"Hebrew default style",
|
"Hebrew default style",
|
||||||
AF_WRITING_SYSTEM_LATIN,
|
AF_WRITING_SYSTEM_LATIN,
|
||||||
|
@ -90,6 +92,13 @@
|
||||||
AF_COVERAGE_DEFAULT )
|
AF_COVERAGE_DEFAULT )
|
||||||
META_STYLE_LATIN( latn, LATN, "Latin" )
|
META_STYLE_LATIN( latn, LATN, "Latin" )
|
||||||
|
|
||||||
|
STYLE( deva_dflt, DEVA_DFLT,
|
||||||
|
"Devanagari default style",
|
||||||
|
AF_WRITING_SYSTEM_LATIN,
|
||||||
|
AF_SCRIPT_DEVA,
|
||||||
|
AF_BLUE_STRINGSET_DEVA,
|
||||||
|
AF_COVERAGE_DEFAULT )
|
||||||
|
|
||||||
#ifdef FT_OPTION_AUTOFIT2
|
#ifdef FT_OPTION_AUTOFIT2
|
||||||
STYLE( ltn2_dflt, LTN2_DFLT,
|
STYLE( ltn2_dflt, LTN2_DFLT,
|
||||||
"Latin 2 default style",
|
"Latin 2 default style",
|
||||||
|
@ -119,7 +128,6 @@
|
||||||
AF_COVERAGE_DEFAULT )
|
AF_COVERAGE_DEFAULT )
|
||||||
|
|
||||||
STYLE_DEFAULT_INDIC( beng, BENG, "Bengali" )
|
STYLE_DEFAULT_INDIC( beng, BENG, "Bengali" )
|
||||||
STYLE_DEFAULT_INDIC( deva, DEVA, "Devanagari" )
|
|
||||||
STYLE_DEFAULT_INDIC( gujr, GUJR, "Gujarati" )
|
STYLE_DEFAULT_INDIC( gujr, GUJR, "Gujarati" )
|
||||||
STYLE_DEFAULT_INDIC( guru, GURU, "Gurmukhi" )
|
STYLE_DEFAULT_INDIC( guru, GURU, "Gurmukhi" )
|
||||||
STYLE_DEFAULT_INDIC( knda, KNDA, "Kannada" )
|
STYLE_DEFAULT_INDIC( knda, KNDA, "Kannada" )
|
||||||
|
|
Loading…
Reference in New Issue