Font Features
Lateef provides alternate glyphs for a number of characters. These are implemented in 3 different ways (OpenType, Graphite and TypeTuner Web) for support in different applications and rendering systems. Ideally the selection of these font features is done in application programs, but many applications do not yet support this functionality. In response to this lack of support for features, a program called TypeTuner (command line version: TypeTuner and web-based version: TypeTuner Web) allows users to create derivative fonts with their own feature settings based on the needs of a local project or region.
- The LateefGR font (most current version) only supports Graphite.
- The Lateef font (v1.001) only supports OpenType
User-selectable font features
The features in LateefGR are documented here.
- The LateefGR font (most current version) only supports Graphite.
- The Lateef font (v1.001) only supports OpenType
End of Ayah (U+06DD) and subtending marks (U+0600..U+0605)
These Arabic characters are intended to enclose or hold one or more digits.
Specific technical details of how to use them are discussed in the Arabic fonts FAQ — Subtending marks.
Customizing with TypeTuner
For applications that do not make use of the OpenType Character Variants, you can now download fonts customized with the variant glyphs you choose. Read this document, visit TypeTuner Web, then choose the variants and download your font.
Language
Affects: U+062F, U+0630, U+0688..U+068F, U+0690, U+06EE, U+0759, U+075A, U+08AE, U+0645, U+0765, U+0766, U+08A7, U+0647, U+0626, U+060C, U+061B, U+06F4, U+06F5, U+06F6, U+06F7, U+0650, U+064F, U+064C, U+0657
Unfortunately, the UI needed to access the language-specific behavior is not yet present in many applications. LibreOffice and Microsoft Word 2016 support language-specific behavior for Kurdish, Sindhi and Urdu (but not Kyrgyz or Rohingya). Some Harfbuzz-based apps, e.g., XeTeX, can access language-specific behavior.
Language | Meem | Heh | Comma | 4 | 6 | 7 | 0650/064E | Feature setting |
---|---|---|---|---|---|---|---|---|
default | م ممم | ه ههه | ، ؛ | ۴ | ۶ | ۷ | بِّ | |
Kurdish(Northern) | م ممم | ه ههه | ، ؛ | ۴ | ۶ | ۷ | بِّ | lang=ku |
Sindhi | م ممم | ه ههه | ، ؛ | ۴ | ۶ | ۷ | بِّ | lang=sd |
Urdu | م ممم | ه ههه | ، ؛ | ۴ | ۶ | ۷ | بِّ | lang=ur |
Character variants
There are some character shape differences in different languages which use the Arabic script. These can be accessed by using Graphite features or through the language support mentioned above.
Meem
Affects: U+0645, U+0765, U+0766
Feature | Sample | Feature setting |
---|---|---|
Standard | م ممم ݥ ݥݥݥ ݦ ݦݦݦ | cv44=0 |
Sindhi-style | م ممم ݥ ݥݥݥ ݦ ݦݦݦ | cv44=1 |
Heh
Affects: U+0647
Feature | Sample | Feature setting |
---|---|---|
Standard | ه ههه | cv48=0 |
Kurdish-style | ه ههه | cv48=3 |
Sindhi-style | ه ههه | cv48=1 |
Urdu-style | ه ههه | cv48=2 |
Arabic U
Affects: U+0677, U+06C7
Feature | Sample | Feature setting |
---|---|---|
Standard | ٷ ۇ | cv50=0 |
Filled | ٷ ۇ | cv50=1 |
Shadda+kasra placement
Affects: U+064D, U+0650 with U+0651
Feature | Sample | Feature setting |
---|---|---|
Raised | بِّ ◌ِّ بٍّ ◌ٍّ | cv62=0 |
Lowered | بِّ ◌ِّ بٍّ ◌ٍّ | cv62=1 |
Damma
Affects: U+064F
Feature | Sample | Feature setting |
---|---|---|
Standard | بُ ◌ُ | cv70=0 |
Filled | بُ ◌ُ | cv70=1 |
Dammatan
Affects: U+064C
Feature | Sample | Feature setting |
---|---|---|
Standard | بٌ ◌ٌ | cv72=0 |
Six-nine | بٌ ◌ٌ | cv72=1 |
Superscript Alef
U+0670 on all yeh, sad and seen-like characters
U+0649 U+064A U+06D0 U+06D1 U+06CC U+0635 U+0636 U+069D U+069E U+06FB U+08AF U+0633 U+0634 U+069A U+069B U+069C U+06FA U+075C U+076D U+0770
Feature | Sample | Feature setting |
---|---|---|
Small | ئٰ ئٰئٰئٰ ىٰ ىٰىٰىٰ يٰ يٰيٰيٰ ٸٰ ٸٰٸٰٸٰ ېٰ ېٰېٰېٰ ۑٰ ۑٰۑٰۑٰ ؽٰ ؽٰؽٰؽٰ یٰ یٰیٰیٰ ێٰ ێٰێٰێٰ صٰ صٰصٰصٰ ضٰ ضٰضٰضٰ ڝٰ ڝٰڝٰڝٰ ڞٰ ڞٰڞٰڞٰ ۻٰ ۻٰۻٰۻٰ سٰ سٰسٰسٰ شٰ شٰشٰشٰ ښٰ ښٰښٰښٰ ڛٰ ڛٰڛٰڛٰ ڜٰ ڜٰڜٰڜٰ ۺٰ ۺٰۺٰۺٰ ݜٰ ݜٰݜٰݜٰ ݭٰ ݭٰݭٰݭٰ ݰٰ ݰٰݰٰݰٰ | cv76=0 |
Large | ئٰ ئٰئٰئٰ ىٰ ىٰىٰىٰ يٰ يٰيٰيٰ ٸٰ ٸٰٸٰٸٰ ېٰ ېٰېٰېٰ ۑٰ ۑٰۑٰۑٰ ؽٰ ؽٰؽٰؽٰ یٰ یٰیٰیٰ ێٰ ێٰێٰێٰ صٰ صٰصٰصٰ ضٰ ضٰضٰضٰ ڝٰ ڝٰڝٰڝٰ ڞٰ ڞٰڞٰڞٰ ۻٰ ۻٰۻٰۻٰ سٰ سٰسٰسٰ شٰ شٰشٰشٰ ښٰ ښٰښٰښٰ ڛٰ ڛٰڛٰڛٰ ڜٰ ڜٰڜٰڜٰ ۺٰ ۺٰۺٰۺٰ ݜٰ ݜٰݜٰݜٰ ݭٰ ݭٰݭٰݭٰ ݰٰ ݰٰݰٰݰٰ | cv76=1 |
Sukun
Affects: U+0652
Feature | Sample | Feature setting |
---|---|---|
Closed | بْ ◌ْ | cv78=0 |
Open down | بْ ◌ْ | cv78=1 |
Open left | بْ ◌ْ | cv78=2 |
End of ayah
Affects: U+06DD
Firefox allows you to use U+06DD followed by the digits and proper rendering occurs. Some applications require the following:
- precede the entire sequence (subtending mark plus following digits) with
202D LEFT-TO-RIGHT OVERRIDE - follow the entire sequence with U+202C POP DIRECTIONAL FORMATTING.
Surrounding the sequence with U+202D and U+202C seems to give the most reliable results in different browsers. However, we have not found a solution that works in Internet Explorer/Edge.
In the example below, the following codepoints are used: U+202D U+06DD U+0031 U+0032 U+0033 U+202C U+202D U+06DD U+0611 U+0622 U+0663 U+202C.
Feature | Sample | Feature setting |
---|---|---|
Standard | 123 ١٢٣ | cv80=0 |
Simplified A | 123 ١٢٣ | cv80=1 |
Simplified B | 123 ١٢٣ | cv80=2 |
Eastern digits
Affects: U+06F4, U+06F6, U+06F7
Feature | Sample | Feature setting |
---|---|---|
Standard | ۴۶۷ | cv82=0 |
Sindhi-style | ۴۶۷ | cv82=1 |
Urdu-style | ۴۶۷ | cv82=2 |
Comma
Affects: U+060C, U+061B
Feature | Sample | Feature setting |
---|---|---|
Upward | ، ؛ | cv84=0 |
Downward | ، ؛ | cv84=1 |
Line spacing
Allows for adjustment of the default line spacing in the font (values shown are ordered in increasing line spacing). This feature is only available with TypeTuner.
Feature |
---|
Tight |
Normal |
Loose |