sl@0: /* sl@0: * sl@0: * (C) Copyright IBM Corp. 1998-2004 - All Rights Reserved sl@0: * sl@0: */ sl@0: sl@0: #ifndef __SINGLESUBSTITUTIONSUBTABLES_H sl@0: #define __SINGLESUBSTITUTIONSUBTABLES_H sl@0: sl@0: /** sl@0: * \file sl@0: * \internal sl@0: */ sl@0: sl@0: #include "LETypes.h" sl@0: #include "LEGlyphFilter.h" sl@0: #include "OpenTypeTables.h" sl@0: #include "GlyphSubstitutionTables.h" sl@0: #include "GlyphIterator.h" sl@0: sl@0: U_NAMESPACE_BEGIN sl@0: sl@0: struct SingleSubstitutionSubtable : GlyphSubstitutionSubtable sl@0: { sl@0: le_uint32 process(GlyphIterator *glyphIterator, const LEGlyphFilter *filter = NULL) const; sl@0: }; sl@0: sl@0: struct SingleSubstitutionFormat1Subtable : SingleSubstitutionSubtable sl@0: { sl@0: le_int16 deltaGlyphID; sl@0: sl@0: le_uint32 process(GlyphIterator *glyphIterator, const LEGlyphFilter *filter = NULL) const; sl@0: }; sl@0: sl@0: struct SingleSubstitutionFormat2Subtable : SingleSubstitutionSubtable sl@0: { sl@0: le_uint16 glyphCount; sl@0: TTGlyphID substituteArray[ANY_NUMBER]; sl@0: sl@0: le_uint32 process(GlyphIterator *glyphIterator, const LEGlyphFilter *filter = NULL) const; sl@0: }; sl@0: sl@0: U_NAMESPACE_END sl@0: #endif sl@0: sl@0: