public abstract class GlyphPositioningSubtable extends GlyphSubtable implements GlyphPositioning
The GlyphPositioningSubtable implements an abstract base of a glyph subtable,
providing a default implementation of the GlyphPositioning interface.
This work was originally authored by Glenn Adams (gadams@apache.org).
LF_IGNORE_BASE, LF_IGNORE_LIGATURE, LF_IGNORE_MARK, LF_INTERNAL_USE_REVERSE_SCAN, LF_MARK_ATTACHMENT_TYPE, LF_RESERVED, LF_RIGHT_TO_LEFT, LF_USE_MARK_FILTERING_SET| Modifier | Constructor and Description |
|---|---|
protected |
GlyphPositioningSubtable(java.lang.String id,
int sequence,
int flags,
int format,
GlyphCoverageTable coverage)
Instantiate a
GlyphPositioningSubtable. |
| Modifier and Type | Method and Description |
|---|---|
int |
getTableType() |
java.lang.String |
getTypeName() |
boolean |
isCompatible(GlyphSubtable subtable)
Determine if a glyph subtable is compatible with this glyph subtable.
|
boolean |
position(GlyphPositioningState ps)
Perform glyph positioning at the current index, mutating the positioning state object as required.
|
static boolean |
position(GlyphPositioningState ps,
GlyphPositioningSubtable[] sta,
int sequenceIndex)
Apply positioning using specified state and subtable array.
|
static boolean |
position(GlyphSequence gs,
java.lang.String script,
java.lang.String language,
java.lang.String feature,
int fontSize,
GlyphPositioningSubtable[] sta,
int[] widths,
int[][] adjustments,
ScriptContextTester sct)
Apply positioning.
|
boolean |
usesReverseScan() |
compareTo, equals, getClasses, getCoverage, getCoverageIndex, getCoverageSize, getEntries, getFlags, getFlags, getFormat, getGDEF, getLookupId, getSequence, getTable, getType, hashCode, resolveLookupReferences, setTable, usesReverseScanprotected GlyphPositioningSubtable(java.lang.String id,
int sequence,
int flags,
int format,
GlyphCoverageTable coverage)
GlyphPositioningSubtable.id - subtable identifiersequence - subtable sequenceflags - subtable flagsformat - subtable formatcoverage - subtable coverage tablepublic int getTableType()
getTableType in class GlyphSubtablepublic java.lang.String getTypeName()
getTypeName in class GlyphSubtablepublic boolean isCompatible(GlyphSubtable subtable)
isCompatible in class GlyphSubtablesubtable - a glyph subtable to determine compatibilitypublic boolean usesReverseScan()
usesReverseScan in class GlyphSubtablepublic boolean position(GlyphPositioningState ps)
position in interface GlyphPositioningps - glyph positioning state objectpublic static final boolean position(GlyphPositioningState ps, GlyphPositioningSubtable[] sta, int sequenceIndex)
sequenceIndex is non-negative, then apply subtables only when current position
matches sequenceIndex in relation to the starting position. Furthermore, upon
successful application at sequenceIndex, then discontinue processing the remainingps - positioning statesta - array of subtables to applysequenceIndex - if non negative, then apply subtables only at specified sequence indexpublic static final boolean position(GlyphSequence gs, java.lang.String script, java.lang.String language, java.lang.String feature, int fontSize, GlyphPositioningSubtable[] sta, int[] widths, int[][] adjustments, ScriptContextTester sct)
gs - input glyph sequencescript - taglanguage - tagfeature - tagfontSize - the font sizesta - subtable arraywidths - arrayadjustments - array (receives output adjustments)sct - script context testerCopyright 1999-2022 The Apache Software Foundation. All Rights Reserved.