]> git.saurik.com Git - apple/icu.git/blob - icuSources/layout/AnchorTables.h
ICU-6.2.4.tar.gz
[apple/icu.git] / icuSources / layout / AnchorTables.h
1 /*
2 *
3 * (C) Copyright IBM Corp. 1998-2004 - All Rights Reserved
4 *
5 */
6
7 #ifndef __ANCHORTABLES_H
8 #define __ANCHORTABLES_H
9
10 /**
11 * \file
12 * \internal
13 */
14
15 #include "LETypes.h"
16 #include "LEFontInstance.h"
17 #include "OpenTypeTables.h"
18
19 U_NAMESPACE_BEGIN
20
21 struct AnchorTable
22 {
23 le_uint16 anchorFormat;
24 le_int16 xCoordinate;
25 le_int16 yCoordinate;
26
27 void getAnchor(LEGlyphID glyphID, const LEFontInstance *fontInstance,
28 LEPoint &anchor) const;
29 };
30
31 struct Format1AnchorTable : AnchorTable
32 {
33 void getAnchor(const LEFontInstance *fontInstance, LEPoint &anchor) const;
34 };
35
36 struct Format2AnchorTable : AnchorTable
37 {
38 le_uint16 anchorPoint;
39
40 void getAnchor(LEGlyphID glyphID, const LEFontInstance *fontInstance, LEPoint &anchor) const;
41 };
42
43 struct Format3AnchorTable : AnchorTable
44 {
45 Offset xDeviceTableOffset;
46 Offset yDeviceTableOffset;
47
48 void getAnchor(const LEFontInstance *fontInstance, LEPoint &anchor) const;
49 };
50
51 U_NAMESPACE_END
52 #endif
53
54