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