public class IndicScriptProcessor extends DefaultScriptProcessor
The IndicScriptProcessor
class implements a script processor for
performing glyph substitution and positioning operations on content associated with the Indic script.
This work was originally authored by Glenn Adams (gadams@apache.org).
Modifier and Type | Class and Description |
---|---|
protected static class |
IndicScriptProcessor.DefaultSyllabizer
Default syllabizer.
|
protected static class |
IndicScriptProcessor.Segment
Syllabic segment.
|
protected static class |
IndicScriptProcessor.Syllabizer
Abstract syllabizer.
|
Modifier and Type | Method and Description |
---|---|
protected int |
findPreBaseMatra(GlyphSequence gs)
Find pre-base matra in sequence.
|
protected int |
findPreBaseMatraTarget(GlyphSequence gs,
int source)
Find pre-base matra target in sequence.
|
protected int |
findReph(GlyphSequence gs)
Find reph in sequence.
|
protected int |
findRephTarget(GlyphSequence gs,
int source)
Find reph target in sequence.
|
java.lang.String[] |
getOptionalPositioningFeatures()
Obtain script specific optional positioning features.
|
java.lang.String[] |
getOptionalSubstitutionFeatures()
Obtain script specific optional substitution features.
|
ScriptContextTester |
getPositioningContextTester()
Obtain script specific positioning context tester.
|
java.lang.String[] |
getPositioningFeatures()
Obtain script specific required positioning features.
|
ScriptContextTester |
getSubstitutionContextTester()
Obtain script specific substitution context tester.
|
java.lang.String[] |
getSubstitutionFeatures()
Obtain script specific required substitution features.
|
protected java.lang.Class<? extends IndicScriptProcessor.Syllabizer> |
getSyllabizerClass()
Get script specific syllabizer class.
|
static ScriptProcessor |
makeProcessor(java.lang.String script)
Make script specific flavor of Indic script processor.
|
boolean |
position(GlyphSequence gs,
java.lang.String script,
java.lang.String language,
int fontSize,
GlyphTable.UseSpec[] usa,
int[] widths,
int[][] adjustments,
ScriptContextTester sct)
Perform positioning processing using a specific set of ordered glyph table use specifications.
|
GlyphSequence |
substitute(GlyphSequence gs,
java.lang.String script,
java.lang.String language,
GlyphTable.UseSpec[] usa,
ScriptContextTester sct)
Perform substitution processing using a specific set of ordered glyph table use specifications.
|
reorderCombiningMarks
assembleLookups, getInstance, getScript, position, substitute
public static ScriptProcessor makeProcessor(java.lang.String script)
script
- tagpublic java.lang.String[] getSubstitutionFeatures()
getSubstitutionFeatures
in class DefaultScriptProcessor
public java.lang.String[] getOptionalSubstitutionFeatures()
getOptionalSubstitutionFeatures
in class ScriptProcessor
public ScriptContextTester getSubstitutionContextTester()
getSubstitutionContextTester
in class DefaultScriptProcessor
public java.lang.String[] getPositioningFeatures()
getPositioningFeatures
in class DefaultScriptProcessor
public java.lang.String[] getOptionalPositioningFeatures()
getOptionalPositioningFeatures
in class ScriptProcessor
public ScriptContextTester getPositioningContextTester()
getPositioningContextTester
in class DefaultScriptProcessor
public GlyphSequence substitute(GlyphSequence gs, java.lang.String script, java.lang.String language, GlyphTable.UseSpec[] usa, ScriptContextTester sct)
substitute
in class ScriptProcessor
gs
- an input glyph sequencescript
- a script identifierlanguage
- a language identifierusa
- an ordered array of glyph table use specssct
- a script specific context tester (or null)protected java.lang.Class<? extends IndicScriptProcessor.Syllabizer> getSyllabizerClass()
protected int findPreBaseMatra(GlyphSequence gs)
gs
- input sequenceprotected int findPreBaseMatraTarget(GlyphSequence gs, int source)
gs
- input sequencesource
- index of pre-base matraprotected int findReph(GlyphSequence gs)
gs
- input sequenceprotected int findRephTarget(GlyphSequence gs, int source)
gs
- input sequencesource
- index of rephpublic boolean position(GlyphSequence gs, java.lang.String script, java.lang.String language, int fontSize, GlyphTable.UseSpec[] usa, int[] widths, int[][] adjustments, ScriptContextTester sct)
position
in class ScriptProcessor
gs
- an input glyph sequencescript
- a script identifierlanguage
- a language identifierfontSize
- size in device unitsusa
- an ordered array of glyph table use specswidths
- 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)Copyright 1999-2012 The Apache Software Foundation. All Rights Reserved.