• Articles
  • API Documentation
Search Results for

    Show / Hide Table of Contents
    • SixLabors.Fonts
      • ColorFontSupport
      • Font
      • FontCollection
      • FontCollectionExtensions
      • FontDescription
      • FontException
      • FontFamily
      • FontFamilyNotFoundException
      • FontMetrics
      • FontRectangle
      • FontStyle
      • Glyph
      • GlyphBounds
      • GlyphColor
      • GlyphLayoutMode
      • GlyphMetrics
      • GlyphMissingException
      • GlyphRendererParameters
      • GlyphType
      • HintingMode
      • HorizontalAlignment
      • HorizontalMetrics
      • IColorGlyphRenderer
      • IFontCollection
      • IGlyphRenderer
      • IGlyphRendererExtensions
      • IMetricsHeader
      • IReadOnlyFontCollection
      • IReadOnlySystemFontCollection
      • InvalidFontFileException
      • InvalidFontTableException
      • KerningMode
      • LayoutMode
      • LayoutModeExtensions
      • MissingFontTableException
      • SystemFonts
      • TextAlignment
      • TextAttributes
      • TextDecorations
      • TextDirection
      • TextJustification
      • TextMeasurer
      • TextOptions
      • TextRenderer
      • TextRun
      • VerticalAlignment
      • VerticalMetrics
      • WordBreaking
    • SixLabors.Fonts.Tables.AdvancedTypographic
      • FeatureTags
      • GlyphClassDef
      • Tag
    • SixLabors.Fonts.Tables.TrueType
      • TrueTypeGlyphMetrics
    • SixLabors.Fonts.Unicode
      • ArabicJoiningClass
      • ArabicJoiningGroup
      • ArabicJoiningType
      • BidiCharacterType
      • BidiClass
      • BidiPairedBracketType
      • CodePoint
      • GraphemeClusterClass
      • IndicPositionalCategory
      • IndicSyllabicCategory
      • LineBreakClass
      • MemoryExtensions
      • ScriptClass
      • SpanCodePointEnumerator
      • SpanGraphemeEnumerator
      • VerticalOrientationType
    • SixLabors.Fonts.WellKnownIds
      • KnownNameIds

    Enum FeatureTags

    Provides enumeration for the different font features. https://docs.microsoft.com/en-us/typography/opentype/spec/featuretags

    Namespace: SixLabors.Fonts.Tables.AdvancedTypographic
    Assembly: SixLabors.Fonts.dll
    Syntax
    public enum FeatureTags : uint

    Fields

    Name Description
    AboveBaseForms

    Above-base Forms. Shortcode: abvf. Substitutes the above-base form of a vowel.

    AboveBaseMarkPositioning

    Above-base Mark Positioning. Shortcode: abvm. Positions marks above base glyphs.

    AboveBaseSubstitutions

    Above-base Substitutions. Shortcode: abvs. Substitutes a ligature for a base glyph and mark that’s above it.

    AccessAllAlternates

    Access All Alternates. Shortcode: aalt. This feature makes all variations of a selected character accessible. This serves several purposes: An application may not support the feature by which the desired glyph would normally be accessed; the user may need a glyph outside the context supported by the normal substitution, or the user may not know what feature produces the desired glyph. Since many-to-one substitutions are not covered, ligatures would not appear in this table unless they were variant forms of another ligature.

    Akhand

    Akhand. Shortcode: akhn. Preferentially substitutes a sequence of characters with a ligature. This substitution is done irrespective of any characters that may precede or follow the sequence.

    AlternateAnnotationForms

    Alternate Annotation Forms. Shortcode: nalt. Replaces default glyphs with various notational forms (e.g. glyphs placed in open or solid circles, squares, parentheses, diamonds or rounded boxes). In some cases an annotation form may already be present, but the user may want a different one.

    AlternateHalfWidths

    Alternate Half Widths. Shortcode: halt. Respaces glyphs designed to be set on full-em widths, fitting them onto half-em widths. This differs from 'hwid' in that it does not substitute new glyphs.

    AlternateVerticalHalfMetrics

    Alternate Vertical Half Metrics. Shortcode: vhal. Respaces glyphs designed to be set on full-em heights, fitting them onto half-em heights.

    AlternateVerticalMetrics

    Alternate Vertical Metrics. Shortcode: valt. Repositions glyphs to visually center them within full-height metrics, for use in vertical setting. Typically applies to full-width Latin glyphs, which are aligned on a common horizontal baseline and not rotated when set vertically in CJKV fonts.

    AlternativeFractions

    Alternative Fractions. Shortccde: afrc. Replaces figures separated by a slash with an alternative form.

    BelowBaseForms

    Below-base Forms. Shortcode: blwf. Substitutes the below-base form of a consonant in conjuncts.

    BelowBaseMarkPositioning

    Below-base Mark Positioning. Shortcode: blwm. Positions marks below base glyphs.

    BelowBaseSubstitutions

    Below-base Substitutions. Shortcode: blws. Produces ligatures that comprise of base glyph and below-base forms.

    CapitalSpacing

    Capital Spacing. Shortcode: cpsp. Globally adjusts inter-glyph spacing for all-capital text. Most typefaces contain capitals and lowercase characters, and the capitals are positioned to work with the lowercase. When capitals are used for words, they need more space between them for legibility and esthetics. This feature would not apply to monospaced designs. Of course the user may want to override this behavior in order to do more pronounced letterspacing for esthetic reasons.

    CaseSensitiveForms

    Case-Sensitive Forms. Shortcode: case. Shifts various punctuation marks up to a position that works better with all-capital sequences or sets of lining figures; also changes oldstyle figures to lining figures. By default, glyphs in a text face are designed to work with lowercase characters. Some characters should be shifted vertically to fit the higher visual center of all-capital or lining text. Also, lining figures are the same height (or close to it) as capitals, and fit much better with all-capital text.

    CenteredCjkPunctuation

    Centered CJK Punctuation. Shortcode: cpct. Centers specific punctuation marks for those fonts that do not include centered and non-centered forms.

    ConjunctFormAfterRo

    Conjunct Form After Ro. Shortcode: cfar. Substitutes alternate below-base or post-base forms in Khmer script when occurring after conjoined Ro (“Coeng Ra”).

    ConjunctForms

    Conjunct Forms. Shortcode: cjct. Produces conjunct forms of consonants in Indic scripts. This is similar to the Akhands feature, but is applied at a different sequential point in the process of shaping an Indic syllable.

    ContextualAlternates

    Contextual Alternates. Shortcode: calt. In specified situations, replaces default glyphs with alternate forms which provide better joining behavior. Used in script typefaces which are designed to have some or all of their glyphs join.

    ContextualLigatures

    Contextual Ligatures. Shortcode: clig. Replaces a sequence of glyphs with a single glyph which is preferred for typographic purposes. Unlike other ligature features, 'clig' specifies the context in which the ligature is recommended. This capability is important in some script designs and for swash ligatures.

    ContextualSwash

    Contextual Swash. Shortcode: cswh. This feature replaces default character glyphs with corresponding swash glyphs in a specified context. Note that there may be more than one swash alternate for a given character.

    CursivePositioning

    Cursive Positioning. Shortcode: curs. In cursive scripts like Arabic, this feature cursively positions adjacent glyphs.

    Denominators

    Denominators. Shortcode: dnom. Replaces selected figures which follow a slash with denominator figures.

    DiscretionaryLigatures

    Discretionary Ligatures. Shortcode: dlig. Replaces a sequence of glyphs with a single glyph which is preferred for typographic purposes. This feature covers those ligatures which may be used for special effect, at the user’s preference.

    Distances

    Distances. Shortcode: dist. Provides a means to control distance between glyphs.

    DotlessForms

    Dotless Forms. Shortcode: dtls. This feature provides dotless forms for Math Alphanumeric characters, such as U+1D422 MATHEMATICAL BOLD SMALL I, U+1D423 MATHEMATICAL BOLD SMALL J, U+1D456 U+MATHEMATICAL ITALIC SMALL I, U+1D457 MATHEMATICAL ITALIC SMALL J, and so on. The dotless forms are to be used as base forms for placing mathematical accents over them.

    ExpertForms

    Expert Forms. Shortcode: expt. Like the JIS78 Forms feature, this feature replaces standard forms in Japanese fonts with corresponding forms preferred by typographers. Although most of the JIS78 substitutions are included, the expert substitution goes on to handle many more characters.

    FinalGlyphOnLineAlternates

    Final Glyph on Line Alternates. Shortcode: falt. Replaces line final glyphs with alternate forms specifically designed for this purpose (they would have less or more advance width as need may be), to help justification of text.

    FlattenedAscentForms

    Flattened ascent forms. Shortcode: flac. This feature provides flattened forms of accents to be used over high-rise bases such as capitals. This feature should only change the shape of the accent and should not move it in the vertical or horizontal direction. Moving of the accents is done by the math handling client. Accents are flattened by the Math engine if their base is higher than MATH.MathConstants.FlattenedAccentBaseHeight.

    Fractions

    Fractions. Shortcode: frac. Replaces figures separated by a slash with “common” (diagonal) fractions.

    FullWidths

    Full Widths. Shortcode: fwid. Replaces glyphs set on other widths with glyphs set on full (usually em) widths. In a CJKV font, this may include “lower ASCII” Latin characters and various symbols. In a European font, this feature replaces proportionally-spaced glyphs with monospaced glyphs, which are generally set on widths of 0.6 em.

    GlyphCompositionDecomposition

    Glyph Composition/Decomposition. Shortcode: ccmp. To minimize the number of glyph alternates, it is sometimes desirable to decompose the default glyph for a character into two or more glyphs. Additionally, it may be preferable to compose default glyphs for two or more characters into a single glyph for better glyph processing. This feature permits such composition/decomposition. The feature should be processed as the first feature processed, and should be processed only when it is called.

    HalantForms

    Halant Forms. Shortcode: haln. Produces the halant forms of consonants in Indic scripts.

    HalfForms

    Half Forms. Shortcode: half. Produces the half forms of consonants in Indic scripts.

    HalfWidths

    Half Widths. Shortcode: hwid. Replaces glyphs on proportional widths, or fixed widths other than half an em, with glyphs on half-em (en) widths. Many CJKV fonts have glyphs which are set on multiple widths; this feature selects the half-em version. There are various contexts in which this is the preferred behavior, including compatibility with older desktop documents.

    Hangul

    Hangul. Shortcode: hngl. Replaces hanja (Chinese-style) Korean characters with the corresponding hangul (syllabic) characters. This effectively reverses the standard input method, in which hangul are entered and replaced by hanja. Many of these substitutions are one-to-one (GSUB lookup type 1), but hanja substitution often requires the user to choose from several possible hangul characters (GSUB lookup type 3).

    HistoricalForms

    Historical Forms. Shortcode: hist. Some letterforms were in common use in the past, but appear anachronistic today. The best-known example is the long form of s; others would include the old Fraktur k. Some fonts include the historical forms as alternates, so they can be used for a “period” effect. This feature replaces the default (current) forms with the historical alternates. While some ligatures are also used for historical effect, this feature deals only with single characters.

    HistoricalLigatures

    Historical Ligatures. Shortcode: hlig. Some ligatures were in common use in the past, but appear anachronistic today. Some fonts include the historical forms as alternates, so they can be used for a “period” effect. This feature replaces the default (current) forms with the historical alternates.

    HojoKanjiForms

    Hojo Kanji Forms (JIS X 0212-1990 Kanji Forms). Shortcode: hojo. The JIS X 0212-1990 (aka, “Hojo Kanji”) and JIS X 0213:2004 character sets overlap significantly. In some cases their prototypical glyphs differ. When building fonts that support both JIS X 0212-1990 and JIS X 0213:2004 (such as those supporting the Adobe-Japan 1-6 character collection), it is recommended that JIS X 0213:2004 forms be preferred as the encoded form. The 'hojo' feature is used to access the JIS X 0212-1990 glyphs for the cases when the JIS X 0213:2004 form is encoded.

    HorizontalKanaAlternates

    Horizontal Kana Alternates. Shortcode: hkna. Replaces standard kana with forms that have been specially designed for only horizontal writing. This is a typographic optimization for improved fit and more even color. Also see 'vkna'.

    InitialForms

    Initial Forms. Shortcode: init. Replaces glyphs for characters that have applicable joining properties with an alternate form when occurring in an initial context.

    IsolatedForms

    Isolated Forms. Shortcode: isol. Replaces glyphs for characters that have applicable joining properties with an alternate form when occurring in a isolate (non-joining) context.

    Italics

    Italics. Shortcode: ital. Some fonts (such as Adobe’s Pro Japanese fonts) will have both Roman and Italic forms of some characters in a single font. This feature replaces the Roman glyphs with the corresponding Italic glyphs.

    Jis2004

    JIS2004 Forms. Shortcode: jp04. The National Language Council (NLC) of Japan has defined new glyph shapes for a number of JIS characters, which were incorporated into JIS X 0213:2004 as new prototypical forms. The 'jp04' feature is a subset of the 'nlck' feature, and is used to access these prototypical glyphs in a manner that maintains the integrity of JIS X 0213:2004.

    Jis78Forms

    JIS78 Forms. Shortcode: jp78. This feature replaces default (JIS90) Japanese glyphs with the corresponding forms from the JIS C 6226-1978 (JIS78) specification.

    Jis83Forms

    JIS83 Forms. Shortcode: jp83. This feature replaces default (JIS90) Japanese glyphs with the corresponding forms from the JIS X 0208-1983 (JIS83) specification.

    Jis90Forms

    JIS90 Forms. Shortcode: jp90. This feature replaces Japanese glyphs from the JIS78 or JIS83 specifications with the corresponding forms from the JIS X 0208-1990 (JIS90) specification.

    JustificationAlternates

    Justification Alternates. Shortcode: jalt. Improves justification of text by replacing glyphs with alternate forms specifically designed for this purpose (they would have less or more advance width as need may be).

    Kerning

    Kerning. Shortcode: kern. Adjusts amount of space between glyphs, generally to provide optically consistent spacing between glyphs. Although a well-designed typeface has consistent inter-glyph spacing overall, some glyph combinations require adjustment for improved legibility. Besides standard adjustment in the horizontal direction, this feature can supply size-dependent kerning data via device tables, “cross-stream” kerning in the Y text direction, and adjustment of glyph placement independent of the advance adjustment. Note that this feature may apply to runs of more than two glyphs, and would not be used in monospaced fonts. Also note that this feature does not apply to text set vertically.

    LeadingJamoForms

    Leading Jamo Forms. Shortcode: ljmo. Substitutes the leading jamo form of a cluster.

    LeftBounds

    Left Bounds. Shortcode: lfbd. Aligns glyphs by their apparent left extents at the left ends of horizontal lines of text, replacing the default behavior of aligning glyphs by their origins. This feature is called by the Optical Bounds ('opbd') feature.

    LeftToRightGlyphAlternates

    Left-to-right glyph alternates. Shortcode: ltra. This feature applies glyphic variants (other than mirrored forms) appropriate for left-to-right text (for mirrored forms, see 'ltrm').

    LeftToRightMirroredForms

    Left-to-right mirrored forms. Shortcode: ltrm. This feature applies mirrored forms appropriate for left-to-right text. (For left-to-right glyph alternates, see 'ltra').

    Ligatures

    Standard Ligatures. Shortcode: liga. Replaces a sequence of glyphs with a single glyph which is preferred for typographic purposes. This feature covers the ligatures which the designer/manufacturer judges should be used in normal conditions.

    LiningFigures

    Lining Figures. Shortcode: lnum. This feature changes selected non-lining figures to lining figures.

    LocalizedForms

    Localized Forms. Shortcode: locl. Many scripts used to write multiple languages over wide geographical areas have developed localized variant forms of specific letters, which are used by individual literary communities. For example, a number of letters in the Bulgarian and Serbian alphabets have forms distinct from their Russian counterparts and from each other. In some cases the localized form differs only subtly from the script “norm”, in others the forms are radically distinct. This feature enables localized forms of glyphs to be substituted for default forms.

    MarkPositioning

    Mark Positioning. Shortcode: mark. Positions mark glyphs with respect to base glyphs.

    MarkToMarkPositioning

    Mark to Mark Positioning. Shortcode: mkmk. Positions marks with respect to other marks. Required in various non-Latin scripts like Arabic.

    MathScriptStyleAlternates

    Math script style alternates. Shortcode: ssty. This feature provides glyph variants adjusted to be more suitable for use in subscripts and superscripts.

    MathematicalGreek

    Mathematical Greek. Shortcode: mgrk. Replaces standard typographic forms of Greek glyphs with corresponding forms commonly used in mathematical notation (which are a subset of the Greek alphabet).

    MedialForms

    Medial Forms. Shortcode: medi Replaces glyphs for characters that have applicable joining properties with an alternate form when occurring in a medial context. This applies to characters that have the Unicode Joining_Type property value Dual_Joining.

    MedialForms2

    Medial Forms #2. Shortcode: med2. Replaces Alaph glyphs in the middle of Syriac words when the preceding base character can be joined to.

    Mset

    Shortcode: mset. Positions Arabic combining marks in fonts for Windows 95 using glyph substitution.

    NlcKanjiForms

    NLC Kanji Forms. Shortcode: nlck. The National Language Council (NLC) of Japan has defined new glyph shapes for a number of JIS characters in 2000. The 'nlck' feature is used to access those glyphs.

    NuktaForms

    Nukta Forms. Shortcode: nukt. Produces Nukta forms in Indic scripts.

    Numerators

    Numerators. Shortcode: numr. Replaces selected figures which precede a slash with numerator figures, and replaces the typographic slash with the fraction slash.

    OldstyleFigures

    Oldstyle Figures. Shortcode: onum. This feature changes selected figures from the default or lining style to oldstyle form.

    OpticalBounds

    Optical Bounds. Shortcode: opbd. Aligns glyphs by their apparent left or right extents in horizontal setting, or apparent top or bottom extents in vertical setting, replacing the default behavior of aligning glyphs by their origins. Another name for this behavior would be visual justification. The optical edge of a given glyph is only indirectly related to its advance width or bounding box; this feature provides a means for getting true visual alignment.

    OpticalSize

    Optical size. Shortcode: size. This feature stores two kinds of information about the optical size of the font: design size (the point size for which the font is optimized) and size range (the range of point sizes which the font can serve well), as well as other information which helps applications use the size range. The design size is useful for determining proper tracking behavior. The size range is useful in families which have fonts covering several ranges. Additional values serve to identify the set of fonts which share related size ranges, and to identify their shared name. Note that sizes refer to nominal final output size, and are independent of viewing magnification or resolution.

    Ordinals

    Ordinals. Shortcode: ordn. Replaces default alphabetic glyphs with the corresponding ordinal forms for use after figures. One exception to the follows-a-figure rule is the numero character (U+2116), which is actually a ligature substitution, but is best accessed through this feature.

    Ornaments

    Ornaments. Shortcode: ornm. This is a dual-function feature, which uses two input methods to give the user access to ornament glyphs (e.g. fleurons, dingbats and border elements) in the font. One method replaces the bullet character with a selection from the full set of available ornaments; the other replaces specific “lower ASCII” characters with ornaments assigned to them. The first approach supports the general or browsing user; the second supports the power user.

    PetiteCapitals

    Petite Capitals. Shortcode: pcap. Some fonts contain an additional size of capital letters, shorter than the regular smallcaps and whimsically referred to as petite caps. Such forms are most likely to be found in designs with a small lowercase x-height, where they better harmonise with lowercase text than the taller smallcaps (for examples of petite caps, see the Emigre type families Mrs Eaves and Filosofia). This feature turns lowercase characters into petite capitals. Forms related to petite capitals, such as specially designed figures, may be included.

    PetiteCapitalsFromCapitals

    Petite Capitals From Capitals. Shortcode: c2pc. This feature turns capital characters into petite capitals. It is generally used for words which would otherwise be set in all caps, such as acronyms, but which are desired in petite-cap form to avoid disrupting the flow of text. See the 'pcap' feature description for notes on the relationship of caps, smallcaps and petite caps.

    PostBaseForms

    Post-base Forms. Shortcode: pstf. Substitutes the post-base form of a consonant.

    PostBaseSubstitutions

    Post-base Substitutions. Shortcode: psts. Substitutes a sequence of a base glyph and post-base glyph, with its ligaturised form.

    PreBaseForms

    Pre-base Forms. Shortcode: pref. Substitutes the pre-base form of a consonant.

    PreBaseSubstitutions

    Pre-base Substitutions. Shortcode: pres. Produces the pre-base forms of conjuncts in Indic scripts. It can also be used to substitute the appropriate glyph variant for pre-base vowel signs.

    ProportionalAlternateVerticalMetrics

    Proportional Alternate Vertical Metrics. Shortcode: vpal. Respaces glyphs designed to be set on full-em heights, fitting them onto individual (more or less proportional) vertical heights. This differs from 'valt' in that it does not substitute new glyphs (GPOS, not GSUB feature). The user may prefer the monospaced form, or may simply want to ensure that the glyph is well-fit.

    ProportionalAlternateWidths

    Proportional Alternate Widths. Shortcode: palt. Respaces glyphs designed to be set on full-em widths, fitting them onto individual (more or less proportional) horizontal widths. This differs from 'pwid' in that it does not substitute new glyphs (GPOS, not GSUB feature). The user may prefer the monospaced form, or may simply want to ensure that the glyph is well-fit and not rotated in vertical setting (Latin forms designed for proportional spacing would be rotated).

    ProportionalFigures

    Proportional Figures. Shortcode: pnum. Replaces figure glyphs set on uniform (tabular) widths with corresponding glyphs set on glyph-specific (proportional) widths. Tabular widths will generally be the default, but this cannot be safely assumed. Of course this feature would not be present in monospaced designs.

    ProportionalKana

    Proportional Kana. Shortcode: pkna. Replaces glyphs, kana and kana-related, set on uniform widths (half or full-width) with proportional glyphs.

    ProportionalWidths

    Proportional Widths. Shortcode: pwid. Replaces glyphs set on uniform widths (typically full or half-em) with proportionally spaced glyphs. The proportional variants are often used for the Latin characters in CJKV fonts, but may also be used for Kana in Japanese fonts.

    QuarterWidths

    Quarter Widths. Shortcode: qwid. Replaces glyphs on other widths with glyphs set on widths of one quarter of an em (half an en). The characters involved are normally figures and some forms of punctuation.

    RakarForms

    Rakar Forms. Shortcode: rkrf. Produces conjoined forms for consonants with rakar in Devanagari and Gujarati scripts.

    Randomize

    Randomize. Shortcode: rand. In order to emulate the irregularity and variety of handwritten text, this feature allows multiple alternate forms to be used.

    RephForm

    Reph Form. Shortcode: rphf. Substitutes the Reph form for a consonant and halant sequence.

    RequiredContextualAlternates

    Required Contextual Alternates. Shortcode: rclt. In specified situations, replaces default glyphs with alternate forms which provide for better joining behavior or other glyph relationships. Especially important in script typefaces which are designed to have some or all of their glyphs join, but applicable also to e.g. variants to improve spacing. This feature is similar to 'calt', but with the difference that it should not be possible to turn off 'rclt' substitutions: they are considered essential to correct layout of the font.

    RequiredLigatures

    Required Ligatures. Shortcode: rlig. Replaces a sequence of glyphs with a single glyph which is preferred for typographic purposes. This feature covers those ligatures, which the script determines as required to be used in normal conditions. This feature is important for some scripts to insure correct glyph formation.

    RequiredVariationAlternates

    Required Variation Alternates. Shortcode: rvrn. his feature is used in fonts that support OpenType Font Variations in order to select alternate glyphs for particular variation instances.

    RightBounds

    Right Bounds. Shortcode: rtbd. Aligns glyphs by their apparent right extents at the right ends of horizontal lines of text, replacing the default behavior of aligning glyphs by their origins. This feature is called by the Optical Bounds ('opbd') feature.

    RightToLeftAlternates

    Right-to-left alternates. Shortcode: rtla. This feature applies glyphic variants (other than mirrored forms) appropriate for right-to-left text. (For mirrored forms, see 'rtlm'.)

    RightToLeftMirroredForms

    Right-to-left mirrored forms. Shortcode: rtlm. This feature applies mirrored forms appropriate for right-to-left text other than for those characters that would be covered by the character-level mirroring step performed by an OpenType layout engine. (For right-to-left glyph alternates, see 'rtla'.)

    RubyNotationForms

    Ruby Notation Forms. Shortcode: ruby. Japanese typesetting often uses smaller kana glyphs, generally in superscripted form, to clarify the meaning of kanji which may be unfamiliar to the reader. These are called “ruby”, from the old typesetting term for four-point-sized type. This feature identifies glyphs in the font which have been designed for this use, substituting them for the default designs.

    ScientificInferiors

    Scientific Inferiors. Shortcode: sinf. Replaces lining or oldstyle figures with inferior figures (smaller glyphs which sit lower than the standard baseline, primarily for chemical or mathematical notation). May also replace lowercase characters with alphabetic inferiors.

    SimplifiedForms

    Simplified Forms. Shortcode: smpl. Replaces “traditional” Chinese or Japanese forms with the corresponding “simplified” forms.

    SlashedZero

    Slashed Zero. Shortcode: zero. Some fonts contain both a default form of zero, and an alternative form which uses a diagonal slash through the counter. Especially in condensed designs, it can be difficult to distinguish between 0 and O (zero and capital O) in any situation where capitals and lining figures may be arbitrarily mixed. This feature allows the user to change from the default 0 to a slashed form.

    SmallCapitals

    Small Capitals. Shortcode: smcp. This feature turns lowercase characters into small capitals. This corresponds to the common SC font layout. It is generally used for display lines set in Large and small caps, such as titles. Forms related to small capitals, such as oldstyle figures, may be included.

    SmallCapitalsFromCapitals

    Small Capitals From Capitals. Shortcode: c2sc. This feature turns capital characters into small capitals. It is generally used for words which would otherwise be set in all caps, such as acronyms, but which are desired in small-cap form to avoid disrupting the flow of text.

    StretchingGlyphDecomposition

    Stretching Glyph Decomposition. Shortcode: stch. Unicode characters, such as the Syriac Abbreviation Mark (U+070F), that enclose other characters need to be able to stretch in order to dynamically adapt to the width of the enclosed text. This feature defines a decomposition set consisting of an odd number of glyphs which describe the stretching glyph. The odd numbered glyphs in the decomposition are fixed reference points which are distributed evenly from the start to the end of the enclosed text. The even numbered glyphs may be repeated as necessary to fill the space between the fixed glyphs. The first and last glyphs may either be simple glyphs with width at the baseline, or mark glyphs. All other decomposition glyphs should have width, but must be defined as mark glyphs.

    StylisticAlternates

    Stylistic Alternates. Shortcode: salt. Many fonts contain alternate glyph designs for a purely esthetic effect; these don’t always fit into a clear category like swash or historical. As in the case of swash glyphs, there may be more than one alternate form. This feature replaces the default forms with the stylistic alternates.

    Subscript

    Subscript. Shortcode: subs. The 'subs' feature may replace a default glyph with a subscript glyph, or it may combine a glyph substitution with positioning adjustments for proper placement.

    Superscript

    Superscript. Shortcode: sups. Replaces lining or oldstyle figures with superior figures (primarily for footnote indication), and replaces lowercase letters with superior letters (primarily for abbreviated French titles).

    Swash

    Swash. Shortcode: swsh. This feature replaces default character glyphs with corresponding swash glyphs. Note that there may be more than one swash alternate for a given character.

    TabularFigures

    Tabular Figures. Shortcode: tnum. Replaces figure glyphs set on proportional widths with corresponding glyphs set on uniform (tabular) widths. Tabular widths will generally be the default, but this cannot be safely assumed. Of course this feature would not be present in monospaced designs.

    TerminalForm2

    Terminal Form #2. Shortcode: fin2. Replaces the Alaph glyph at the end of Syriac words with its appropriate form, when the preceding base character cannot be joined to, and that preceding base character is not a Dalath, Rish, or dotless Dalath-Rish.

    TerminalForm3

    Terminal Form #3. Shortcode: fin3. Replaces Alaph glyphs at the end of Syriac words when the preceding base character is a Dalath, Rish, or dotless Dalath-Rish.

    TerminalForms

    Terminal Forms. Shortcode: fina. Replaces glyphs for characters that have applicable joining properties with an alternate form when occurring in a final context.

    ThirdWidths

    Third Widths. Shortcode: twid. Replaces glyphs on other widths with glyphs set on widths of one third of an em. The characters involved are normally figures and some forms of punctuation.

    Titling

    Titling. Shortcode: titl. This feature replaces the default glyphs with corresponding forms designed specifically for titling. These may be all-capital and/or larger on the body, and adjusted for viewing at larger sizes.

    TraditionalForms

    Traditional Forms. Shortcode: trad. Replaces 'simplified' Chinese hanzi or Japanese kanji forms with the corresponding 'traditional' forms.

    TraditionalNameForms

    Traditional Name Forms. Shortcode: tnam. Replaces “simplified” Japanese kanji forms with the corresponding “traditional” forms. This is equivalent to the Traditional Forms feature, but explicitly limited to the traditional forms considered proper for use in personal names (as many as 205 glyphs in some fonts).

    TrailingJamoForms

    Trailing Jamo Forms. Shortcode: tjmo. Substitutes the trailing jamo form of a cluster.

    Unicase

    Unicase. Shortcode: unic. This feature maps upper- and lowercase letters to a mixed set of lowercase and small capital forms, resulting in a single case alphabet (for an example of unicase, see the Emigre type family Filosofia). The letters substituted may vary from font to font, as appropriate to the design. If aligning to the x-height, smallcap glyphs may be substituted, or specially designed unicase forms might be used. Substitutions might also include specially designed figures.

    VattuVariants

    Vattu Variants. Shortcode: vatu. In an Indic consonant conjunct, substitutes a ligature glyph for a base consonant and a following vattu (below-base) form of a conjoining consonant, or for a half form of a consonant and a following vattu form.

    VerticalAlternates

    Vertical Alternates. Shortcode: vert. Transforms default glyphs into glyphs that are appropriate for upright presentation in vertical writing mode.While the glyphs for most characters in East Asian writing systems remain upright when set in vertical writing mode, some must be transformed — usually by rotation, shifting, or different component ordering — for vertical writing mode.

    VerticalAlternatesAndRotation

    Vertical Alternates and Rotation. Shortcode: vrt2. Replaces some fixed-width (half-, third- or quarter-width) or proportional-width glyphs (mostly Latin or katakana) with forms suitable for vertical writing (that is, rotated 90 degrees clockwise). Note that these are a superset of the glyphs covered in the 'vert' table.

    VerticalAlternatesForRotation

    Vertical Alternates for Rotation. Shortcode: vrtr. Transforms default glyphs into glyphs that are appropriate for sideways presentation in vertical writing mode. While the glyphs for most characters in East Asian writing systems remain upright when set in vertical writing mode, glyphs for other characters — such as those of other scripts or for particular Western-style punctuation — are expected to be presented sideways in vertical writing.

    VerticalKanaAlternates

    Vertical Kana Alternates. Shortcode: vkna. Replaces standard kana with forms that have been specially designed for only vertical writing. This is a typographic optimization for improved fit and more even color. Also see 'hkna'.

    VerticalKerning

    Vertical Kerning. Shortcode: vkrn Adjusts amount of space between glyphs, generally to provide optically consistent spacing between glyphs. Although a well-designed typeface has consistent inter-glyph spacing overall, some glyph combinations require adjustment for improved legibility. Besides standard adjustment in the vertical direction, this feature can supply size-dependent kerning data via device tables, “cross-stream” kerning in the X text direction, and adjustment of glyph placement independent of the advance adjustment. Note that this feature may apply to runs of more than two glyphs, and would not be used in monospaced fonts. Also note that this feature applies only to text set vertically.

    VowelJamoForms

    Vowel Jamo Forms. Shortcode: vjmo. Substitutes the vowel jamo form of a cluster.

    • Edit this page
    • View Source
    In this article
    Back to top Generated by DocFX