|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.extex.font.format.xtf.tables.gps.XtfLookupTable
org.extex.font.format.xtf.tables.gps.XtfGPOSMarkToBaseTable
public abstract class XtfGPOSMarkToBaseTable
The GPOS table MarkToBase.
MarkToBase Attachment Positioning Subtable
The MarkToBase attachment (MarkBasePos) subtable is used to position combining mark glyphs with respect to base glyphs. For example, the Arabic, Hebrew, and Thai scripts combine vowels, diacritical marks, and tone marks with base glyphs.
In the MarkBasePos subtable, every mark glyph has an anchor point and is associated with a class of marks. Each base glyph then defines an anchor point for each class of marks it uses.
For example, assume two mark classes: all marks positioned above base glyphs (Class 0), and all marks positioned below base glyphs (Class 1). In this case, each base glyph that uses these marks would define two anchor points, one for attaching the mark glyphs listed in Class 0, and one for attaching the mark glyphs listed in Class 1.
To identify the base glyph that combines with a mark, the text-processing client must look backward in the glyph string from the mark to the preceding base glyph. To combine the mark and base glyph, the client aligns their attachment points, positioning the mark with respect to the final pen point (advance) position of the base glyph.
The MarkToBase Attachment subtable has one format: MarkBasePosFormat1. The subtable begins with a format identifier (PosFormat) and offsets to two Coverage tables: one that lists all the mark glyphs referenced in the subtable (MarkCoverage), and one that lists all the base glyphs referenced in the subtable (BaseCoverage).
For each mark glyph in the MarkCoverage table, a record specifies its class and an offset to the Anchor table that describes the mark's attachment point (MarkRecord). A mark class is identified by a specific integer, called a class value. ClassCount specifies the total number of distinct mark classes defined in all the MarkRecords.
| Nested Class Summary | |
|---|---|
static class |
XtfGPOSMarkToBaseTable.BaseArrayTable
BaseArray table |
static class |
XtfGPOSMarkToBaseTable.BaseRecord
BaseRecord. |
static class |
XtfGPOSMarkToBaseTable.MarkToBaseTableFormat1
MarkToBaseTable format 1. |
| Field Summary |
|---|
| Fields inherited from class org.extex.font.format.xtf.tables.gps.XtfLookupTable |
|---|
count |
| Method Summary | |
|---|---|
static XtfGPOSMarkToBaseTable |
newInstance(RandomAccessR rar,
int offset,
XtfGlyphName xtfGlyp)
Create a new Instance. |
| Methods inherited from class org.extex.font.format.xtf.tables.gps.XtfLookupTable |
|---|
getCount, getFormat, getXtfGlyph |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.extex.util.xml.XMLWriterConvertible |
|---|
writeXML |
| Method Detail |
|---|
public static XtfGPOSMarkToBaseTable newInstance(RandomAccessR rar,
int offset,
XtfGlyphName xtfGlyp)
throws java.io.IOException
rar - the inputoffset - the offsetxtfGlyp - The glyph name.
java.io.IOException - if an IO-error occurs
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||