3 * (C) Copyright IBM Corp. 1998-2013 - All Rights Reserved
7 #ifndef __MARKTOLIGATUREPOSITIONINGSUBTABLES_H
8 #define __MARKTOLIGATUREPOSITIONINGSUBTABLES_H
16 #include "LEFontInstance.h"
17 #include "OpenTypeTables.h"
18 #include "GlyphPositioningTables.h"
19 #include "AttachmentPosnSubtables.h"
20 #include "GlyphIterator.h"
24 struct MarkToLigaturePositioningSubtable : AttachmentPositioningSubtable
26 le_int32 process(const LETableReference &base, GlyphIterator *glyphIterator, const LEFontInstance *fontInstance, LEErrorCode &success) const;
27 LEGlyphID findLigatureGlyph(GlyphIterator *glyphIterator) const;
30 struct ComponentRecord
32 Offset ligatureAnchorTableOffsetArray[ANY_NUMBER];
34 LE_VAR_ARRAY(ComponentRecord, ligatureAnchorTableOffsetArray)
36 struct LigatureAttachTable
38 le_uint16 componentCount;
39 ComponentRecord componentRecordArray[ANY_NUMBER];
41 LE_VAR_ARRAY(LigatureAttachTable, componentRecordArray)
45 le_uint16 ligatureCount;
46 Offset ligatureAttachTableOffsetArray[ANY_NUMBER];
48 LE_VAR_ARRAY(LigatureArray, ligatureAttachTableOffsetArray)