• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * @(#)KernTable.h	1.1 04/10/13
3  *
4  * (C) Copyright IBM Corp. 2004-2005 - All Rights Reserved
5  *
6  */
7 
8 #ifndef __KERNTABLE_H
9 #define __KERNTABLE_H
10 
11 #ifndef __LETYPES_H
12 #include "LETypes.h"
13 #endif
14 
15 #include "LETypes.h"
16 //#include "LEFontInstance.h"
17 //#include "LEGlyphStorage.h"
18 
19 #include <stdio.h>
20 
21 U_NAMESPACE_BEGIN
22 struct PairInfo;
23 class  LEFontInstance;
24 class  LEGlyphStorage;
25 
26 /**
27  * Windows type 0 kerning table support only for now.
28  */
29 class U_LAYOUT_API KernTable
30 {
31  private:
32   le_uint16 coverage;
33   le_uint16 nPairs;
34   const PairInfo* pairs;
35   const LEFontInstance* font;
36   le_uint16 searchRange;
37   le_uint16 entrySelector;
38   le_uint16 rangeShift;
39 
40  public:
41   KernTable(const LEFontInstance* font, const void* tableData);
42 
43   /*
44    * Process the glyph positions.
45    */
46   void process(LEGlyphStorage& storage);
47 };
48 
49 U_NAMESPACE_END
50 
51 #endif
52