[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[freetype2] ogonek 6cde0b240 1/4: [autofit] Better handling of character
From: |
Werner Lemberg |
Subject: |
[freetype2] ogonek 6cde0b240 1/4: [autofit] Better handling of characters with attached diacritics. (1/3) |
Date: |
Mon, 5 May 2025 13:46:38 -0400 (EDT) |
branch: ogonek
commit 6cde0b240499cf7c3ee35bbfec60e7dea496fb4f
Author: Werner Lemberg <wl@gnu.org>
Commit: Werner Lemberg <wl@gnu.org>
[autofit] Better handling of characters with attached diacritics. (1/3)
Introduce blue zone properties that will be used to make the auto-hinter
ignore diacritics attached on the top or the bottom of a base character.
* src/autofit/afblue.hin (AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM): New properties.
* src/autofit/afblue.dat: Use them.
* src/autofit/afblue.c, src/autofit/afblue.h: Rengenerated.
* src/autofit/aflatin.h (AF_LATIN_IS_CAPITAL_BOTTOM_BLUE,
AF_LATIN_IS_SMALL_BOTTOM_BLUE, AF_LATIN_BLUE_BOTTOM,
AF_LATIN_BLUE_BOTTOM_SMALL): New macros.
* src/autofit/aflatin.c (af_latin_metrics_init_blues)[FT_DEBUG_LEVEL_TRACE]:
Updated.
---
src/autofit/afblue.c | 192 ++++++++++++++++++++++++-------------------------
src/autofit/afblue.dat | 192 ++++++++++++++++++++++++-------------------------
src/autofit/afblue.h | 9 ++-
src/autofit/afblue.hin | 9 ++-
src/autofit/aflatin.c | 18 +++++
src/autofit/aflatin.h | 23 ++++--
6 files changed, 238 insertions(+), 205 deletions(-)
diff --git a/src/autofit/afblue.c b/src/autofit/afblue.c
index ea83969cd..96d8c8185 100644
--- a/src/autofit/afblue.c
+++ b/src/autofit/afblue.c
@@ -467,24 +467,24 @@
af_blue_stringsets[] =
{
/* */
- { AF_BLUE_STRING_ADLAM_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
- { AF_BLUE_STRING_ADLAM_CAPITAL_BOTTOM, 0 },
+ { AF_BLUE_STRING_ADLAM_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_ADLAM_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM },
{ AF_BLUE_STRING_ADLAM_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
- { AF_BLUE_STRING_ADLAM_SMALL_BOTTOM, 0 },
- { AF_BLUE_STRING_MAX, 0 },
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
},
+ { AF_BLUE_STRING_ADLAM_SMALL_BOTTOM, AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM
},
+ { AF_BLUE_STRING_MAX, 0
},
{ AF_BLUE_STRING_ARABIC_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_ARABIC_BOTTOM, 0 },
{ AF_BLUE_STRING_ARABIC_JOIN, AF_BLUE_PROPERTY_LATIN_NEUTRAL },
{ AF_BLUE_STRING_MAX, 0 },
- { AF_BLUE_STRING_ARMENIAN_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
- { AF_BLUE_STRING_ARMENIAN_CAPITAL_BOTTOM, 0
},
- { AF_BLUE_STRING_ARMENIAN_SMALL_ASCENDER, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_ARMENIAN_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_ARMENIAN_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM },
+ { AF_BLUE_STRING_ARMENIAN_SMALL_ASCENDER, AF_BLUE_PROPERTY_LATIN_TOP
},
{ AF_BLUE_STRING_ARMENIAN_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
|
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT
},
- { AF_BLUE_STRING_ARMENIAN_SMALL_BOTTOM, 0
},
- { AF_BLUE_STRING_ARMENIAN_SMALL_DESCENDER, 0
},
- { AF_BLUE_STRING_MAX, 0
},
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
},
+ { AF_BLUE_STRING_ARMENIAN_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM },
+ { AF_BLUE_STRING_ARMENIAN_SMALL_DESCENDER, 0
},
+ { AF_BLUE_STRING_MAX, 0
},
{ AF_BLUE_STRING_AVESTAN_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_AVESTAN_BOTTOM, 0 },
{ AF_BLUE_STRING_MAX, 0 },
@@ -508,14 +508,14 @@
{ AF_BLUE_STRING_CHAKMA_BOTTOM, 0 },
{ AF_BLUE_STRING_CHAKMA_DESCENDER, 0 },
{ AF_BLUE_STRING_MAX, 0 },
- { AF_BLUE_STRING_CANADIAN_SYLLABICS_TOP,
AF_BLUE_PROPERTY_LATIN_TOP },
- { AF_BLUE_STRING_CANADIAN_SYLLABICS_BOTTOM, 0
},
+ { AF_BLUE_STRING_CANADIAN_SYLLABICS_TOP,
AF_BLUE_PROPERTY_LATIN_TOP },
+ { AF_BLUE_STRING_CANADIAN_SYLLABICS_BOTTOM, 0
},
{ AF_BLUE_STRING_CANADIAN_SYLLABICS_SMALL_TOP,
AF_BLUE_PROPERTY_LATIN_TOP |
-
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
- { AF_BLUE_STRING_CANADIAN_SYLLABICS_SMALL_BOTTOM, 0
},
- { AF_BLUE_STRING_CANADIAN_SYLLABICS_SUPS_TOP,
AF_BLUE_PROPERTY_LATIN_TOP },
- { AF_BLUE_STRING_CANADIAN_SYLLABICS_SUPS_BOTTOM, 0
},
- { AF_BLUE_STRING_MAX, 0
},
+
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
+ { AF_BLUE_STRING_CANADIAN_SYLLABICS_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM },
+ { AF_BLUE_STRING_CANADIAN_SYLLABICS_SUPS_TOP,
AF_BLUE_PROPERTY_LATIN_TOP },
+ { AF_BLUE_STRING_CANADIAN_SYLLABICS_SUPS_BOTTOM, 0
},
+ { AF_BLUE_STRING_MAX, 0
},
{ AF_BLUE_STRING_CARIAN_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_CARIAN_BOTTOM, 0 },
{ AF_BLUE_STRING_MAX, 0 },
@@ -527,24 +527,24 @@
{ AF_BLUE_STRING_CHEROKEE_SMALL, 0
},
{ AF_BLUE_STRING_CHEROKEE_SMALL_DESCENDER, 0
},
{ AF_BLUE_STRING_MAX, 0
},
- { AF_BLUE_STRING_COPTIC_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
- { AF_BLUE_STRING_COPTIC_CAPITAL_BOTTOM, 0
},
+ { AF_BLUE_STRING_COPTIC_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_COPTIC_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM },
{ AF_BLUE_STRING_COPTIC_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT
},
- { AF_BLUE_STRING_COPTIC_SMALL_BOTTOM, 0
},
- { AF_BLUE_STRING_MAX, 0
},
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
},
+ { AF_BLUE_STRING_COPTIC_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM },
+ { AF_BLUE_STRING_MAX, 0
},
{ AF_BLUE_STRING_CYPRIOT_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_CYPRIOT_BOTTOM, 0 },
{ AF_BLUE_STRING_CYPRIOT_SMALL, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_CYPRIOT_SMALL, 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_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_CYRILLIC_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM },
{ 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_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_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 |
@@ -553,12 +553,12 @@
{ AF_BLUE_STRING_DEVANAGARI_BASE, 0 },
{ AF_BLUE_STRING_DEVANAGARI_BOTTOM, 0 },
{ AF_BLUE_STRING_MAX, 0 },
- { AF_BLUE_STRING_DESERET_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
- { AF_BLUE_STRING_DESERET_CAPITAL_BOTTOM, 0
},
+ { AF_BLUE_STRING_DESERET_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_DESERET_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM },
{ AF_BLUE_STRING_DESERET_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT
},
- { AF_BLUE_STRING_DESERET_SMALL_BOTTOM, 0
},
- { AF_BLUE_STRING_MAX, 0
},
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
},
+ { AF_BLUE_STRING_DESERET_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM },
+ { AF_BLUE_STRING_MAX, 0
},
{ AF_BLUE_STRING_ETHIOPIC_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_ETHIOPIC_BOTTOM, 0 },
{ AF_BLUE_STRING_MAX, 0 },
@@ -578,23 +578,23 @@
{ AF_BLUE_STRING_GEORGIAN_NUSKHURI_ASCENDER, AF_BLUE_PROPERTY_LATIN_TOP
},
{ AF_BLUE_STRING_GEORGIAN_NUSKHURI_DESCENDER, 0
},
{ AF_BLUE_STRING_MAX, 0
},
- { AF_BLUE_STRING_GLAGOLITIC_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
- { AF_BLUE_STRING_GLAGOLITIC_CAPITAL_BOTTOM, 0
},
+ { AF_BLUE_STRING_GLAGOLITIC_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_GLAGOLITIC_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM },
{ AF_BLUE_STRING_GLAGOLITIC_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
|
-
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
- { AF_BLUE_STRING_GLAGOLITIC_SMALL_BOTTOM, 0
},
- { AF_BLUE_STRING_MAX, 0
},
+
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
+ { AF_BLUE_STRING_GLAGOLITIC_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM },
+ { AF_BLUE_STRING_MAX, 0
},
{ AF_BLUE_STRING_GOTHIC_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_GOTHIC_BOTTOM, 0 },
{ AF_BLUE_STRING_MAX, 0 },
- { AF_BLUE_STRING_GREEK_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
- { AF_BLUE_STRING_GREEK_CAPITAL_BOTTOM, 0
},
- { AF_BLUE_STRING_GREEK_SMALL_BETA_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_GREEK_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_GREEK_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM },
+ { AF_BLUE_STRING_GREEK_SMALL_BETA_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
{ AF_BLUE_STRING_GREEK_SMALL, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT
},
- { AF_BLUE_STRING_GREEK_SMALL, 0
},
- { AF_BLUE_STRING_GREEK_SMALL_DESCENDER, 0
},
- { AF_BLUE_STRING_MAX, 0
},
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
},
+ { AF_BLUE_STRING_GREEK_SMALL, 0
},
+ { AF_BLUE_STRING_GREEK_SMALL_DESCENDER, 0
},
+ { AF_BLUE_STRING_MAX, 0
},
{ AF_BLUE_STRING_GUJARATI_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
{ AF_BLUE_STRING_GUJARATI_BOTTOM, 0 },
@@ -643,45 +643,45 @@
{ AF_BLUE_STRING_LAO_LARGE_ASCENDER, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_LAO_DESCENDER, 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_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_LATIN_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM },
+ { AF_BLUE_STRING_LATIN_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
{ AF_BLUE_STRING_LATIN_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT
},
- { AF_BLUE_STRING_LATIN_SMALL_BOTTOM, 0
},
- { AF_BLUE_STRING_LATIN_SMALL_DESCENDER, 0
},
- { AF_BLUE_STRING_MAX, 0
},
- { AF_BLUE_STRING_LATIN_SUBS_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
- { AF_BLUE_STRING_LATIN_SUBS_CAPITAL_BOTTOM, 0
},
- { AF_BLUE_STRING_LATIN_SUBS_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
},
+ { AF_BLUE_STRING_LATIN_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM },
+ { AF_BLUE_STRING_LATIN_SMALL_DESCENDER, 0
},
+ { AF_BLUE_STRING_MAX, 0
},
+ { AF_BLUE_STRING_LATIN_SUBS_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_LATIN_SUBS_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM },
+ { AF_BLUE_STRING_LATIN_SUBS_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
{ AF_BLUE_STRING_LATIN_SUBS_SMALL, AF_BLUE_PROPERTY_LATIN_TOP
|
-
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
- { AF_BLUE_STRING_LATIN_SUBS_SMALL, 0
},
- { AF_BLUE_STRING_LATIN_SUBS_SMALL_DESCENDER, 0
},
- { AF_BLUE_STRING_MAX, 0
},
- { AF_BLUE_STRING_LATIN_SUPS_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
- { AF_BLUE_STRING_LATIN_SUPS_CAPITAL_BOTTOM, 0
},
- { AF_BLUE_STRING_LATIN_SUPS_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
+ { AF_BLUE_STRING_LATIN_SUBS_SMALL, 0
},
+ { AF_BLUE_STRING_LATIN_SUBS_SMALL_DESCENDER, 0
},
+ { AF_BLUE_STRING_MAX, 0
},
+ { AF_BLUE_STRING_LATIN_SUPS_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_LATIN_SUPS_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM },
+ { AF_BLUE_STRING_LATIN_SUPS_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
{ AF_BLUE_STRING_LATIN_SUPS_SMALL, AF_BLUE_PROPERTY_LATIN_TOP
|
-
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
- { AF_BLUE_STRING_LATIN_SUPS_SMALL, 0
},
- { AF_BLUE_STRING_LATIN_SUPS_SMALL_DESCENDER, 0
},
- { AF_BLUE_STRING_MAX, 0
},
+
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
+ { AF_BLUE_STRING_LATIN_SUPS_SMALL, 0
},
+ { AF_BLUE_STRING_LATIN_SUPS_SMALL_DESCENDER, 0
},
+ { AF_BLUE_STRING_MAX, 0
},
{ AF_BLUE_STRING_LISU_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_LISU_BOTTOM, 0 },
{ AF_BLUE_STRING_MAX, 0 },
{ AF_BLUE_STRING_MALAYALAM_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_MALAYALAM_BOTTOM, 0 },
{ AF_BLUE_STRING_MAX, 0 },
- { AF_BLUE_STRING_MEDEFAIDRIN_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
- { AF_BLUE_STRING_MEDEFAIDRIN_CAPITAL_BOTTOM, 0
},
- { AF_BLUE_STRING_MEDEFAIDRIN_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_MEDEFAIDRIN_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_MEDEFAIDRIN_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM },
+ { AF_BLUE_STRING_MEDEFAIDRIN_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
{ AF_BLUE_STRING_MEDEFAIDRIN_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
|
-
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
- { AF_BLUE_STRING_MEDEFAIDRIN_SMALL_BOTTOM, 0
},
- { AF_BLUE_STRING_MEDEFAIDRIN_SMALL_DESCENDER, 0
},
- { AF_BLUE_STRING_MEDEFAIDRIN_DIGIT_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
- { AF_BLUE_STRING_MAX, 0
},
+
AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
+ { AF_BLUE_STRING_MEDEFAIDRIN_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM },
+ { AF_BLUE_STRING_MEDEFAIDRIN_SMALL_DESCENDER, 0
},
+ { AF_BLUE_STRING_MEDEFAIDRIN_DIGIT_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_MAX, 0
},
{ AF_BLUE_STRING_MONGOLIAN_TOP_BASE, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_MONGOLIAN_BOTTOM_BASE, 0 },
{ AF_BLUE_STRING_MAX, 0 },
@@ -691,12 +691,12 @@
{ AF_BLUE_STRING_MYANMAR_ASCENDER, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_MYANMAR_DESCENDER, 0 },
{ AF_BLUE_STRING_MAX, 0 },
- { AF_BLUE_STRING_NKO_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
- { AF_BLUE_STRING_NKO_BOTTOM, 0 },
+ { AF_BLUE_STRING_NKO_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
+ { AF_BLUE_STRING_NKO_BOTTOM, 0 },
{ AF_BLUE_STRING_NKO_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
- { AF_BLUE_STRING_NKO_SMALL_BOTTOM, 0 },
- { AF_BLUE_STRING_MAX, 0 },
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
+ { AF_BLUE_STRING_NKO_SMALL_BOTTOM, AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM },
+ { AF_BLUE_STRING_MAX, 0 },
{ AF_BLUE_STRING_MAX, 0 },
{ AF_BLUE_STRING_OL_CHIKI, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_OL_CHIKI, 0 },
@@ -704,15 +704,15 @@
{ AF_BLUE_STRING_OLD_TURKIC_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_OLD_TURKIC_BOTTOM, 0 },
{ AF_BLUE_STRING_MAX, 0 },
- { AF_BLUE_STRING_OSAGE_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
- { AF_BLUE_STRING_OSAGE_CAPITAL_BOTTOM, 0
},
- { AF_BLUE_STRING_OSAGE_CAPITAL_DESCENDER, 0
},
- { AF_BLUE_STRING_OSAGE_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT
},
- { AF_BLUE_STRING_OSAGE_SMALL_BOTTOM, 0
},
- { AF_BLUE_STRING_OSAGE_SMALL_ASCENDER, AF_BLUE_PROPERTY_LATIN_TOP
},
- { AF_BLUE_STRING_OSAGE_SMALL_DESCENDER, 0
},
- { AF_BLUE_STRING_MAX, 0
},
+ { AF_BLUE_STRING_OSAGE_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_OSAGE_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM },
+ { AF_BLUE_STRING_OSAGE_CAPITAL_DESCENDER, 0
},
+ { AF_BLUE_STRING_OSAGE_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
},
+ { AF_BLUE_STRING_OSAGE_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM },
+ { AF_BLUE_STRING_OSAGE_SMALL_ASCENDER, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_OSAGE_SMALL_DESCENDER, 0
},
+ { AF_BLUE_STRING_MAX, 0
},
{ AF_BLUE_STRING_OSMANYA_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_OSMANYA_BOTTOM, 0 },
{ AF_BLUE_STRING_MAX, 0 },
@@ -723,13 +723,13 @@
{ AF_BLUE_STRING_SAURASHTRA_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_SAURASHTRA_BOTTOM, 0 },
{ AF_BLUE_STRING_MAX, 0 },
- { AF_BLUE_STRING_SHAVIAN_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
- { AF_BLUE_STRING_SHAVIAN_BOTTOM, 0 },
- { AF_BLUE_STRING_SHAVIAN_DESCENDER, 0 },
+ { AF_BLUE_STRING_SHAVIAN_TOP, AF_BLUE_PROPERTY_LATIN_TOP
},
+ { AF_BLUE_STRING_SHAVIAN_BOTTOM, 0
},
+ { AF_BLUE_STRING_SHAVIAN_DESCENDER, 0
},
{ AF_BLUE_STRING_SHAVIAN_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT },
- { AF_BLUE_STRING_SHAVIAN_SMALL_BOTTOM, 0 },
- { AF_BLUE_STRING_MAX, 0 },
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
},
+ { AF_BLUE_STRING_SHAVIAN_SMALL_BOTTOM, AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM
},
+ { AF_BLUE_STRING_MAX, 0
},
{ AF_BLUE_STRING_SINHALA_TOP, AF_BLUE_PROPERTY_LATIN_TOP },
{ AF_BLUE_STRING_SINHALA_BOTTOM, 0 },
{ AF_BLUE_STRING_SINHALA_DESCENDER, 0 },
diff --git a/src/autofit/afblue.dat b/src/autofit/afblue.dat
index 88bab2632..eae39e0eb 100644
--- a/src/autofit/afblue.dat
+++ b/src/autofit/afblue.dat
@@ -699,12 +699,12 @@ 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_ADLM
- { AF_BLUE_STRING_ADLAM_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
- { AF_BLUE_STRING_ADLAM_CAPITAL_BOTTOM, 0 }
+ { AF_BLUE_STRING_ADLAM_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_ADLAM_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM }
{ AF_BLUE_STRING_ADLAM_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
- { AF_BLUE_STRING_ADLAM_SMALL_BOTTOM, 0 }
- { AF_BLUE_STRING_MAX, 0 }
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
}
+ { AF_BLUE_STRING_ADLAM_SMALL_BOTTOM, AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM
}
+ { AF_BLUE_STRING_MAX, 0
}
AF_BLUE_STRINGSET_ARAB
{ AF_BLUE_STRING_ARABIC_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
@@ -713,14 +713,14 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY
AF_BLUE_STRINGSET_MAX_LEN:
{ AF_BLUE_STRING_MAX, 0 }
AF_BLUE_STRINGSET_ARMN
- { AF_BLUE_STRING_ARMENIAN_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
- { AF_BLUE_STRING_ARMENIAN_CAPITAL_BOTTOM, 0
}
- { AF_BLUE_STRING_ARMENIAN_SMALL_ASCENDER, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_ARMENIAN_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_ARMENIAN_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM }
+ { AF_BLUE_STRING_ARMENIAN_SMALL_ASCENDER, AF_BLUE_PROPERTY_LATIN_TOP
}
{ AF_BLUE_STRING_ARMENIAN_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
|
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT
}
- { AF_BLUE_STRING_ARMENIAN_SMALL_BOTTOM, 0
}
- { AF_BLUE_STRING_ARMENIAN_SMALL_DESCENDER, 0
}
- { AF_BLUE_STRING_MAX, 0
}
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
}
+ { AF_BLUE_STRING_ARMENIAN_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM }
+ { AF_BLUE_STRING_ARMENIAN_SMALL_DESCENDER, 0
}
+ { AF_BLUE_STRING_MAX, 0
}
AF_BLUE_STRINGSET_AVST
{ AF_BLUE_STRING_AVESTAN_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
@@ -756,14 +756,14 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY
AF_BLUE_STRINGSET_MAX_LEN:
{ AF_BLUE_STRING_MAX, 0 }
AF_BLUE_STRINGSET_CANS
- { AF_BLUE_STRING_CANADIAN_SYLLABICS_TOP,
AF_BLUE_PROPERTY_LATIN_TOP }
- { AF_BLUE_STRING_CANADIAN_SYLLABICS_BOTTOM, 0
}
+ { AF_BLUE_STRING_CANADIAN_SYLLABICS_TOP,
AF_BLUE_PROPERTY_LATIN_TOP }
+ { AF_BLUE_STRING_CANADIAN_SYLLABICS_BOTTOM, 0
}
{ AF_BLUE_STRING_CANADIAN_SYLLABICS_SMALL_TOP,
AF_BLUE_PROPERTY_LATIN_TOP |
-
AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
- { AF_BLUE_STRING_CANADIAN_SYLLABICS_SMALL_BOTTOM, 0
}
- { AF_BLUE_STRING_CANADIAN_SYLLABICS_SUPS_TOP,
AF_BLUE_PROPERTY_LATIN_TOP }
- { AF_BLUE_STRING_CANADIAN_SYLLABICS_SUPS_BOTTOM, 0
}
- { AF_BLUE_STRING_MAX, 0
}
+
AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
+ { AF_BLUE_STRING_CANADIAN_SYLLABICS_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM }
+ { AF_BLUE_STRING_CANADIAN_SYLLABICS_SUPS_TOP,
AF_BLUE_PROPERTY_LATIN_TOP }
+ { AF_BLUE_STRING_CANADIAN_SYLLABICS_SUPS_BOTTOM, 0
}
+ { AF_BLUE_STRING_MAX, 0
}
AF_BLUE_STRINGSET_CARI
{ AF_BLUE_STRING_CARIAN_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
@@ -781,12 +781,12 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY
AF_BLUE_STRINGSET_MAX_LEN:
{ AF_BLUE_STRING_MAX, 0
}
AF_BLUE_STRINGSET_COPT
- { AF_BLUE_STRING_COPTIC_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
- { AF_BLUE_STRING_COPTIC_CAPITAL_BOTTOM, 0 }
+ { AF_BLUE_STRING_COPTIC_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_COPTIC_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM }
{ AF_BLUE_STRING_COPTIC_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
- { AF_BLUE_STRING_COPTIC_SMALL_BOTTOM, 0 }
- { AF_BLUE_STRING_MAX, 0 }
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
}
+ { AF_BLUE_STRING_COPTIC_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM }
+ { AF_BLUE_STRING_MAX, 0
}
AF_BLUE_STRINGSET_CPRT
{ AF_BLUE_STRING_CYPRIOT_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
@@ -796,13 +796,13 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY
AF_BLUE_STRINGSET_MAX_LEN:
{ 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_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_CYRILLIC_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM }
{ 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_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_DEVA
{ AF_BLUE_STRING_DEVANAGARI_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
@@ -815,12 +815,12 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY
AF_BLUE_STRINGSET_MAX_LEN:
{ AF_BLUE_STRING_MAX, 0 }
AF_BLUE_STRINGSET_DSRT
- { AF_BLUE_STRING_DESERET_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
- { AF_BLUE_STRING_DESERET_CAPITAL_BOTTOM, 0
}
+ { AF_BLUE_STRING_DESERET_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_DESERET_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM }
{ AF_BLUE_STRING_DESERET_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT
}
- { AF_BLUE_STRING_DESERET_SMALL_BOTTOM, 0
}
- { AF_BLUE_STRING_MAX, 0
}
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
}
+ { AF_BLUE_STRING_DESERET_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM }
+ { AF_BLUE_STRING_MAX, 0
}
AF_BLUE_STRINGSET_ETHI
{ AF_BLUE_STRING_ETHIOPIC_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
@@ -848,12 +848,12 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY
AF_BLUE_STRINGSET_MAX_LEN:
{ AF_BLUE_STRING_MAX, 0
}
AF_BLUE_STRINGSET_GLAG
- { AF_BLUE_STRING_GLAGOLITIC_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
- { AF_BLUE_STRING_GLAGOLITIC_CAPITAL_BOTTOM, 0
}
+ { AF_BLUE_STRING_GLAGOLITIC_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_GLAGOLITIC_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM }
{ AF_BLUE_STRING_GLAGOLITIC_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
|
-
AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
- { AF_BLUE_STRING_GLAGOLITIC_SMALL_BOTTOM, 0
}
- { AF_BLUE_STRING_MAX, 0
}
+
AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
+ { AF_BLUE_STRING_GLAGOLITIC_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM }
+ { AF_BLUE_STRING_MAX, 0
}
AF_BLUE_STRINGSET_GOTH
{ AF_BLUE_STRING_GOTHIC_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
@@ -861,14 +861,14 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY
AF_BLUE_STRINGSET_MAX_LEN:
{ AF_BLUE_STRING_MAX, 0 }
AF_BLUE_STRINGSET_GREK
- { AF_BLUE_STRING_GREEK_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
- { AF_BLUE_STRING_GREEK_CAPITAL_BOTTOM, 0 }
- { AF_BLUE_STRING_GREEK_SMALL_BETA_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
+ { AF_BLUE_STRING_GREEK_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_GREEK_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM }
+ { AF_BLUE_STRING_GREEK_SMALL_BETA_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
{ AF_BLUE_STRING_GREEK_SMALL, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
- { AF_BLUE_STRING_GREEK_SMALL, 0 }
- { AF_BLUE_STRING_GREEK_SMALL_DESCENDER, 0 }
- { AF_BLUE_STRING_MAX, 0 }
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
}
+ { AF_BLUE_STRING_GREEK_SMALL, 0
}
+ { AF_BLUE_STRING_GREEK_SMALL_DESCENDER, 0
}
+ { AF_BLUE_STRING_MAX, 0
}
AF_BLUE_STRINGSET_GUJR
{ AF_BLUE_STRING_GUJARATI_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
@@ -935,34 +935,34 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY
AF_BLUE_STRINGSET_MAX_LEN:
{ 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_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_LATIN_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM }
+ { AF_BLUE_STRING_LATIN_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
{ AF_BLUE_STRING_LATIN_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
- { AF_BLUE_STRING_LATIN_SMALL_BOTTOM, 0 }
- { AF_BLUE_STRING_LATIN_SMALL_DESCENDER, 0 }
- { AF_BLUE_STRING_MAX, 0 }
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
}
+ { AF_BLUE_STRING_LATIN_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM }
+ { AF_BLUE_STRING_LATIN_SMALL_DESCENDER, 0
}
+ { AF_BLUE_STRING_MAX, 0
}
AF_BLUE_STRINGSET_LATB
- { AF_BLUE_STRING_LATIN_SUBS_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
- { AF_BLUE_STRING_LATIN_SUBS_CAPITAL_BOTTOM, 0
}
- { AF_BLUE_STRING_LATIN_SUBS_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_LATIN_SUBS_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_LATIN_SUBS_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM }
+ { AF_BLUE_STRING_LATIN_SUBS_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
{ AF_BLUE_STRING_LATIN_SUBS_SMALL, AF_BLUE_PROPERTY_LATIN_TOP
|
-
AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
- { AF_BLUE_STRING_LATIN_SUBS_SMALL, 0
}
- { AF_BLUE_STRING_LATIN_SUBS_SMALL_DESCENDER, 0
}
- { AF_BLUE_STRING_MAX, 0
}
+
AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
+ { AF_BLUE_STRING_LATIN_SUBS_SMALL, 0
}
+ { AF_BLUE_STRING_LATIN_SUBS_SMALL_DESCENDER, 0
}
+ { AF_BLUE_STRING_MAX, 0
}
AF_BLUE_STRINGSET_LATP
- { AF_BLUE_STRING_LATIN_SUPS_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
- { AF_BLUE_STRING_LATIN_SUPS_CAPITAL_BOTTOM, 0
}
- { AF_BLUE_STRING_LATIN_SUPS_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_LATIN_SUPS_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_LATIN_SUPS_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM }
+ { AF_BLUE_STRING_LATIN_SUPS_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
{ AF_BLUE_STRING_LATIN_SUPS_SMALL, AF_BLUE_PROPERTY_LATIN_TOP
|
-
AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
- { AF_BLUE_STRING_LATIN_SUPS_SMALL, 0
}
- { AF_BLUE_STRING_LATIN_SUPS_SMALL_DESCENDER, 0
}
- { AF_BLUE_STRING_MAX, 0
}
+
AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
+ { AF_BLUE_STRING_LATIN_SUPS_SMALL, 0
}
+ { AF_BLUE_STRING_LATIN_SUPS_SMALL_DESCENDER, 0
}
+ { AF_BLUE_STRING_MAX, 0
}
AF_BLUE_STRINGSET_LISU
{ AF_BLUE_STRING_LISU_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
@@ -975,15 +975,15 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY
AF_BLUE_STRINGSET_MAX_LEN:
{ AF_BLUE_STRING_MAX, 0 }
AF_BLUE_STRINGSET_MEDF
- { AF_BLUE_STRING_MEDEFAIDRIN_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
- { AF_BLUE_STRING_MEDEFAIDRIN_CAPITAL_BOTTOM, 0
}
- { AF_BLUE_STRING_MEDEFAIDRIN_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_MEDEFAIDRIN_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_MEDEFAIDRIN_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM }
+ { AF_BLUE_STRING_MEDEFAIDRIN_SMALL_F_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
{ AF_BLUE_STRING_MEDEFAIDRIN_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
|
-
AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
- { AF_BLUE_STRING_MEDEFAIDRIN_SMALL_BOTTOM, 0
}
- { AF_BLUE_STRING_MEDEFAIDRIN_SMALL_DESCENDER, 0
}
- { AF_BLUE_STRING_MEDEFAIDRIN_DIGIT_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
- { AF_BLUE_STRING_MAX, 0
}
+
AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
+ { AF_BLUE_STRING_MEDEFAIDRIN_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM }
+ { AF_BLUE_STRING_MEDEFAIDRIN_SMALL_DESCENDER, 0
}
+ { AF_BLUE_STRING_MEDEFAIDRIN_DIGIT_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_MAX, 0
}
AF_BLUE_STRINGSET_MONG
{ AF_BLUE_STRING_MONGOLIAN_TOP_BASE, AF_BLUE_PROPERTY_LATIN_TOP }
@@ -999,12 +999,12 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY
AF_BLUE_STRINGSET_MAX_LEN:
{ AF_BLUE_STRING_MAX, 0 }
AF_BLUE_STRINGSET_NKOO
- { AF_BLUE_STRING_NKO_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
- { AF_BLUE_STRING_NKO_BOTTOM, 0 }
+ { AF_BLUE_STRING_NKO_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
+ { AF_BLUE_STRING_NKO_BOTTOM, 0 }
{ AF_BLUE_STRING_NKO_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
- { AF_BLUE_STRING_NKO_SMALL_BOTTOM, 0 }
- { AF_BLUE_STRING_MAX, 0 }
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
+ { AF_BLUE_STRING_NKO_SMALL_BOTTOM, AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM }
+ { AF_BLUE_STRING_MAX, 0 }
AF_BLUE_STRINGSET_NONE
{ AF_BLUE_STRING_MAX, 0 }
@@ -1020,15 +1020,15 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY
AF_BLUE_STRINGSET_MAX_LEN:
{ AF_BLUE_STRING_MAX, 0 }
AF_BLUE_STRINGSET_OSGE
- { AF_BLUE_STRING_OSAGE_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
- { AF_BLUE_STRING_OSAGE_CAPITAL_BOTTOM, 0
}
- { AF_BLUE_STRING_OSAGE_CAPITAL_DESCENDER, 0
}
- { AF_BLUE_STRING_OSAGE_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT
}
- { AF_BLUE_STRING_OSAGE_SMALL_BOTTOM, 0
}
- { AF_BLUE_STRING_OSAGE_SMALL_ASCENDER, AF_BLUE_PROPERTY_LATIN_TOP
}
- { AF_BLUE_STRING_OSAGE_SMALL_DESCENDER, 0
}
- { AF_BLUE_STRING_MAX, 0
}
+ { AF_BLUE_STRING_OSAGE_CAPITAL_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_OSAGE_CAPITAL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM }
+ { AF_BLUE_STRING_OSAGE_CAPITAL_DESCENDER, 0
}
+ { AF_BLUE_STRING_OSAGE_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
}
+ { AF_BLUE_STRING_OSAGE_SMALL_BOTTOM,
AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM }
+ { AF_BLUE_STRING_OSAGE_SMALL_ASCENDER, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_OSAGE_SMALL_DESCENDER, 0
}
+ { AF_BLUE_STRING_MAX, 0
}
AF_BLUE_STRINGSET_OSMA
{ AF_BLUE_STRING_OSMANYA_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
@@ -1047,13 +1047,13 @@ AF_BLUE_STRINGSET_ENUM AF_BLUE_STRINGSETS_ARRAY
AF_BLUE_STRINGSET_MAX_LEN:
{ AF_BLUE_STRING_MAX, 0 }
AF_BLUE_STRINGSET_SHAW
- { AF_BLUE_STRING_SHAVIAN_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
- { AF_BLUE_STRING_SHAVIAN_BOTTOM, 0 }
- { AF_BLUE_STRING_SHAVIAN_DESCENDER, 0 }
+ { AF_BLUE_STRING_SHAVIAN_TOP, AF_BLUE_PROPERTY_LATIN_TOP
}
+ { AF_BLUE_STRING_SHAVIAN_BOTTOM, 0
}
+ { AF_BLUE_STRING_SHAVIAN_DESCENDER, 0
}
{ AF_BLUE_STRING_SHAVIAN_SMALL_TOP, AF_BLUE_PROPERTY_LATIN_TOP |
- AF_BLUE_PROPERTY_LATIN_X_HEIGHT }
- { AF_BLUE_STRING_SHAVIAN_SMALL_BOTTOM, 0 }
- { AF_BLUE_STRING_MAX, 0 }
+ AF_BLUE_PROPERTY_LATIN_X_HEIGHT
}
+ { AF_BLUE_STRING_SHAVIAN_SMALL_BOTTOM, AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM
}
+ { AF_BLUE_STRING_MAX, 0
}
AF_BLUE_STRINGSET_SINH
{ AF_BLUE_STRING_SINHALA_TOP, AF_BLUE_PROPERTY_LATIN_TOP }
diff --git a/src/autofit/afblue.h b/src/autofit/afblue.h
index 2aa9d0984..0b289eab1 100644
--- a/src/autofit/afblue.h
+++ b/src/autofit/afblue.h
@@ -314,14 +314,17 @@ FT_BEGIN_HEADER
/* Properties are specific to a writing system. We assume that a given */
/* blue string can't be used in more than a single writing system, which */
/* is a safe bet. */
-#define AF_BLUE_PROPERTY_LATIN_TOP ( 1U << 0 ) /* must have value 1 */
+#define AF_BLUE_PROPERTY_LATIN_TOP ( 1U << 0 ) /* must be value 1 */
#define AF_BLUE_PROPERTY_LATIN_SUB_TOP ( 1U << 1 )
#define AF_BLUE_PROPERTY_LATIN_NEUTRAL ( 1U << 2 )
#define AF_BLUE_PROPERTY_LATIN_X_HEIGHT ( 1U << 3 )
#define AF_BLUE_PROPERTY_LATIN_LONG ( 1U << 4 )
-#define AF_BLUE_PROPERTY_CJK_TOP ( 1U << 0 ) /* must have value 1 */
-#define AF_BLUE_PROPERTY_CJK_HORIZ ( 1U << 1 ) /* must have value 2 */
+#define AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM ( 1U << 5 )
+#define AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM ( 1U << 6 )
+
+#define AF_BLUE_PROPERTY_CJK_TOP ( 1U << 0 ) /* must be value 1 */
+#define AF_BLUE_PROPERTY_CJK_HORIZ ( 1U << 1 ) /* must be value 2 */
#define AF_BLUE_PROPERTY_CJK_RIGHT AF_BLUE_PROPERTY_CJK_TOP
diff --git a/src/autofit/afblue.hin b/src/autofit/afblue.hin
index 38031505a..7bf96c809 100644
--- a/src/autofit/afblue.hin
+++ b/src/autofit/afblue.hin
@@ -99,14 +99,17 @@ FT_BEGIN_HEADER
/* Properties are specific to a writing system. We assume that a given */
/* blue string can't be used in more than a single writing system, which */
/* is a safe bet. */
-#define AF_BLUE_PROPERTY_LATIN_TOP ( 1U << 0 ) /* must have value 1 */
+#define AF_BLUE_PROPERTY_LATIN_TOP ( 1U << 0 ) /* must be value 1 */
#define AF_BLUE_PROPERTY_LATIN_SUB_TOP ( 1U << 1 )
#define AF_BLUE_PROPERTY_LATIN_NEUTRAL ( 1U << 2 )
#define AF_BLUE_PROPERTY_LATIN_X_HEIGHT ( 1U << 3 )
#define AF_BLUE_PROPERTY_LATIN_LONG ( 1U << 4 )
-#define AF_BLUE_PROPERTY_CJK_TOP ( 1U << 0 ) /* must have value 1 */
-#define AF_BLUE_PROPERTY_CJK_HORIZ ( 1U << 1 ) /* must have value 2 */
+#define AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM ( 1U << 5 )
+#define AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM ( 1U << 6 )
+
+#define AF_BLUE_PROPERTY_CJK_TOP ( 1U << 0 ) /* must be value 1 */
+#define AF_BLUE_PROPERTY_CJK_HORIZ ( 1U << 1 ) /* must be value 2 */
#define AF_BLUE_PROPERTY_CJK_RIGHT AF_BLUE_PROPERTY_CJK_TOP
diff --git a/src/autofit/aflatin.c b/src/autofit/aflatin.c
index 4ccdbd5f9..fadda0a1b 100644
--- a/src/autofit/aflatin.c
+++ b/src/autofit/aflatin.c
@@ -399,6 +399,20 @@
FT_TRACE5(( "long" ));
}
+ if ( AF_LATIN_IS_CAPITAL_BOTTOM_BLUE( bs ) )
+ {
+ if ( have_flag )
+ FT_TRACE5(( ", " ));
+ FT_TRACE5(( "capital bottom" ));
+ }
+
+ if ( AF_LATIN_IS_SMALL_BOTTOM_BLUE( bs ) )
+ {
+ if ( have_flag )
+ FT_TRACE5(( ", " ));
+ FT_TRACE5(( "small bottom" ));
+ }
+
FT_TRACE5(( ")" ));
}
@@ -951,6 +965,10 @@
blue->flags |= AF_LATIN_BLUE_SUB_TOP;
if ( AF_LATIN_IS_NEUTRAL_BLUE( bs ) )
blue->flags |= AF_LATIN_BLUE_NEUTRAL;
+ if ( AF_LATIN_IS_CAPITAL_BOTTOM_BLUE( bs ) )
+ blue->flags |= AF_LATIN_BLUE_BOTTOM;
+ if ( AF_LATIN_IS_SMALL_BOTTOM_BLUE( bs ) )
+ blue->flags |= AF_LATIN_BLUE_BOTTOM_SMALL;
/*
* The following flag is used later to adjust the y and x scales
diff --git a/src/autofit/aflatin.h b/src/autofit/aflatin.h
index 54e506150..cd411a09a 100644
--- a/src/autofit/aflatin.h
+++ b/src/autofit/aflatin.h
@@ -61,17 +61,26 @@ FT_BEGIN_HEADER
( (b)->properties & AF_BLUE_PROPERTY_LATIN_X_HEIGHT )
#define AF_LATIN_IS_LONG_BLUE( b ) \
( (b)->properties & AF_BLUE_PROPERTY_LATIN_LONG )
+#define AF_LATIN_IS_CAPITAL_BOTTOM_BLUE( b ) \
+ ( (b)->properties & AF_BLUE_PROPERTY_LATIN_CAPITAL_BOTTOM )
+#define AF_LATIN_IS_SMALL_BOTTOM_BLUE( b ) \
+ ( (b)->properties & AF_BLUE_PROPERTY_LATIN_SMALL_BOTTOM )
#define AF_LATIN_MAX_WIDTHS 16
-#define AF_LATIN_BLUE_ACTIVE ( 1U << 0 ) /* zone height is <= 3/4px */
-#define AF_LATIN_BLUE_TOP ( 1U << 1 ) /* we have a top blue zone */
-#define AF_LATIN_BLUE_SUB_TOP ( 1U << 2 ) /* we have a subscript top */
- /* blue zone */
-#define AF_LATIN_BLUE_NEUTRAL ( 1U << 3 ) /* we have neutral blue zone */
-#define AF_LATIN_BLUE_ADJUSTMENT ( 1U << 4 ) /* used for scale adjustment */
- /* optimization */
+#define AF_LATIN_BLUE_ACTIVE ( 1U << 0 ) /* zone height is <= 3/4px */
+#define AF_LATIN_BLUE_TOP ( 1U << 1 ) /* we have a top blue zone */
+#define AF_LATIN_BLUE_SUB_TOP ( 1U << 2 ) /* we have a subscript */
+ /* top blue zone */
+#define AF_LATIN_BLUE_NEUTRAL ( 1U << 3 ) /* we have a neutral blue */
+ /* zone */
+#define AF_LATIN_BLUE_ADJUSTMENT ( 1U << 4 ) /* used for scale adjustm. */
+ /* optimization */
+#define AF_LATIN_BLUE_BOTTOM ( 1U << 5 ) /* we have a capital */
+ /* letter bottom blue zone */
+#define AF_LATIN_BLUE_BOTTOM_SMALL ( 1U << 6 ) /* we have a small letter */
+ /* bottom blue zone */
typedef struct AF_LatinBlueRec_
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [freetype2] ogonek 6cde0b240 1/4: [autofit] Better handling of characters with attached diacritics. (1/3),
Werner Lemberg <=