sl@0: /* sl@0: * sl@0: * (C) Copyright IBM Corp. 1998-2004 - All Rights Reserved sl@0: * sl@0: */ sl@0: sl@0: #ifndef __ANCHORTABLES_H sl@0: #define __ANCHORTABLES_H sl@0: sl@0: /** sl@0: * \file sl@0: * \internal sl@0: */ sl@0: sl@0: #include "LETypes.h" sl@0: #include "LEFontInstance.h" sl@0: #include "OpenTypeTables.h" sl@0: sl@0: U_NAMESPACE_BEGIN sl@0: sl@0: struct AnchorTable sl@0: { sl@0: le_uint16 anchorFormat; sl@0: le_int16 xCoordinate; sl@0: le_int16 yCoordinate; sl@0: sl@0: void getAnchor(LEGlyphID glyphID, const LEFontInstance *fontInstance, sl@0: LEPoint &anchor) const; sl@0: }; sl@0: sl@0: struct Format1AnchorTable : AnchorTable sl@0: { sl@0: void getAnchor(const LEFontInstance *fontInstance, LEPoint &anchor) const; sl@0: }; sl@0: sl@0: struct Format2AnchorTable : AnchorTable sl@0: { sl@0: le_uint16 anchorPoint; sl@0: sl@0: void getAnchor(LEGlyphID glyphID, const LEFontInstance *fontInstance, LEPoint &anchor) const; sl@0: }; sl@0: sl@0: struct Format3AnchorTable : AnchorTable sl@0: { sl@0: Offset xDeviceTableOffset; sl@0: Offset yDeviceTableOffset; sl@0: sl@0: void getAnchor(const LEFontInstance *fontInstance, LEPoint &anchor) const; sl@0: }; sl@0: sl@0: U_NAMESPACE_END sl@0: #endif sl@0: sl@0: