public static class GlyphTable.LookupTable extends Object implements Comparable
LookupTable class comprising an identifier and an ordered list
of glyph subtables, each of which employ the same lookup identifier.| Constructor and Description |
|---|
LookupTable(String id,
GlyphSubtable subtable)
Instantiate a LookupTable.
|
LookupTable(String id,
List<GlyphSubtable> subtables)
Instantiate a LookupTable.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
addSubtable(GlyphSubtable subtable)
Add a subtable into this lookup table's collecion of subtables according to its
natural order.
|
int |
compareTo(Object o) |
boolean |
equals(Object o) |
void |
freezeSubtables(Map<String,GlyphTable.LookupTable> lookupTables)
Freeze subtables, i.e., do not allow further subtable addition, and
create resulting cached state.
|
GlyphSubtable[] |
getSubtables() |
int |
hashCode() |
boolean |
performsPositioning()
Determine if this glyph table performs positioning.
|
boolean |
performsSubstitution()
Determine if this glyph table performs substitution.
|
boolean |
position(GlyphPositioningState ps,
int sequenceIndex)
Perform positioning processing on an existing glyph positioning state object using this lookup table's subtables.
|
boolean |
position(GlyphSequence gs,
String script,
String language,
String feature,
int fontSize,
int[] widths,
int[][] adjustments,
ScriptContextTester sct)
Perform positioning processing using this lookup table's subtables.
|
GlyphSequence |
substitute(GlyphSequence gs,
String script,
String language,
String feature,
ScriptContextTester sct)
Perform substitution processing using this lookup table's subtables.
|
GlyphSequence |
substitute(GlyphSubstitutionState ss,
int sequenceIndex)
Perform substitution processing on an existing glyph substitution state object using this lookup table's subtables.
|
String |
toString() |
public LookupTable(String id, GlyphSubtable subtable)
id - the lookup table's identifiersubtable - an initial subtable (or null)public LookupTable(String id, List<GlyphSubtable> subtables)
id - the lookup table's identifiersubtables - a pre-poplated list of subtables or nullpublic GlyphSubtable[] getSubtables()
public boolean addSubtable(GlyphSubtable subtable)
subtable - to addpublic void freezeSubtables(Map<String,GlyphTable.LookupTable> lookupTables)
lookupTables - map from lookup table identifers, e.g. "lu4", to lookup tablespublic boolean performsSubstitution()
public GlyphSequence substitute(GlyphSequence gs, String script, String language, String feature, ScriptContextTester sct)
gs - an input glyph sequencescript - a script identifierlanguage - a language identifierfeature - a feature identifiersct - a script specific context tester (or null)public GlyphSequence substitute(GlyphSubstitutionState ss, int sequenceIndex)
ss - a glyph substitution state objectsequenceIndex - if non negative, then apply subtables only at specified sequence indexpublic boolean performsPositioning()
public boolean position(GlyphSequence gs, String script, String language, String feature, int fontSize, int[] widths, int[][] adjustments, ScriptContextTester sct)
gs - an input glyph sequencescript - a script identifierlanguage - a language identifierfeature - a feature identifierfontSize - size in device unitswidths - array of default advancements for each glyph in fontadjustments - accumulated adjustments array (sequence) of 4-tuples of placement [PX,PY] and advance [AX,AY] adjustments, in that order,
with one 4-tuple for each element of glyph sequencesct - a script specific context tester (or null)public boolean position(GlyphPositioningState ps, int sequenceIndex)
ps - a glyph positioning state objectsequenceIndex - if non negative, then apply subtables only at specified sequence indexpublic boolean equals(Object o)
public int compareTo(Object o)
compareTo in interface ComparableCopyright © 2025 Apache Software Foundation. All rights reserved.