Split vowel decomposition needs to be applied recursively so that split vowels get fully decomposed before shaping is applied. ![]() Therefore cluster validation depends on the sequence of decompositions which may be more restrictive than with ordinary vowels. Therefore, the validation schemas only take into account the cardinal positions (Pre, Above, Below, Post) since the full decompositions occupy one position only. When a decomposition is not defined in UnicodeData.txt, it is up to the font developer to handle any required decomposition during GSUB processing.Ĭluster validation, is done based on the decomposed state of a split vowel. USE decomposes split vowel characters belonging to UISC = Vowel_Dependent according to character decomposition mappings defined in UnicodeData.txt: 0DCF SINHALA VOWEL SIGN AELA-PILLA Mc 0 L N ĠDD9 SINHALA VOWEL SIGN KOMBUVA Mc 0 L N ĠDDC SINHALA VOWEL SIGN KOMBUVA HAA AELA-PILLA Mc 0 L 0DD9 0DCF N These overides are available in two data files: USE makes use of overrides to Unicode categories to achieve the desired shaping behavior when the Unicode value is not well aligned with shaping requirements or when no Unicode value is provided. U+1B6B, U+1B6C, U+1B6D, U+1B6E, U+1B6F, U+1B70, U+1B71, U+1B72, U+1B73Ĭlasses that can vary by position are defined in Unicode’s Indic_Positional_Category (UIPC), additional subclasses are defined: Sigla UGC = Po (Punctuation signs), except U+104E, U+2022Īny character not currently assigned or otherwise reserved in Unicode ![]() The use of these hieroglyphic categories is documented in this specification and the values are defined in the ISC-Additional data file.ĮSC = USE, Extended Syllabic Category Sigla Hieroglyphic scripts require syllabic categories not defined in UISC. Where necessary for USE's processing, data for such scripts has been provided in supplementary data files included in USE's GitHub archive. Note: Non-Indic complex scripts are not included in Unicode's UISC and UIPC data. UIPC = Unicode, Indic Positional Category, prior to Unicode 8.0 this property was known as Indic Matra Category. This section defines how USE’s classes and subclasses are derived from Unicode data. There is a mapping between Unicode’s categories and the classes used internally by USE. The Universal Shaping Engine (USE) generates character properties from Unicode data. Character properties are used in parsing syllables and identifying their parts as well as determining whether any special behavior or contextual reordering is required. The shaping engine divides the text into syllable clusters and identifies character properties. Itemization preprocessing ensures that the runs of text being shaped contain characters belonging to a single script but may include SCRIPT_COMMON characters. The run of text that the shaping engine receives for the purpose of shaping is a sequence of Unicode characters. Custom substitution features requested by the application, GSUB.The Universal Shaping Engine processes text in stages. While it does not contain instructions for creating fonts, it will help font developers understand how the Universal shaping engine processes complex script text. ![]() ![]() It contains information about terminology, font features and behavior of the Universal Shaping Engine (USE). This document targets developers implementing shaping behavior compatible with the Microsoft OpenType specification for complex scripts not supported by a dedicated shaping engine. This document presents information that will help font developers in creating OpenType fonts for complex scripts included in the Unicode Standard 15.0, but not otherwise supported by a dedicated shaping engine.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |