2005-01-14 19:22:53 +00:00
|
|
|
/*
|
|
|
|
* @(#)KernTable.h 1.1 04/10/13
|
|
|
|
*
|
2005-03-08 22:49:59 +00:00
|
|
|
* (C) Copyright IBM Corp. 2004-2005 - All Rights Reserved
|
2005-01-14 19:22:53 +00:00
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __KERNTABLE_H
|
|
|
|
#define __KERNTABLE_H
|
|
|
|
|
|
|
|
#ifndef __LETYPES_H
|
|
|
|
#include "LETypes.h"
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#include "LETypes.h"
|
2005-08-06 00:48:27 +00:00
|
|
|
//#include "LEFontInstance.h"
|
|
|
|
//#include "LEGlyphStorage.h"
|
2005-01-14 19:22:53 +00:00
|
|
|
|
|
|
|
#include <stdio.h>
|
|
|
|
|
2005-06-24 23:55:37 +00:00
|
|
|
U_NAMESPACE_BEGIN
|
2005-01-14 19:22:53 +00:00
|
|
|
struct PairInfo;
|
2005-08-06 00:48:27 +00:00
|
|
|
class LEFontInstance;
|
|
|
|
class LEGlyphStorage;
|
2005-01-14 19:22:53 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Windows type 0 kerning table support only for now.
|
|
|
|
*/
|
|
|
|
class U_LAYOUT_API KernTable
|
|
|
|
{
|
|
|
|
private:
|
|
|
|
le_uint16 coverage;
|
|
|
|
le_uint16 nPairs;
|
|
|
|
const PairInfo* pairs;
|
|
|
|
const LEFontInstance* font;
|
|
|
|
le_uint16 searchRange;
|
|
|
|
le_uint16 entrySelector;
|
|
|
|
le_uint16 rangeShift;
|
|
|
|
|
|
|
|
public:
|
|
|
|
KernTable(const LEFontInstance* font, const void* tableData);
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Process the glyph positions.
|
|
|
|
*/
|
|
|
|
void process(LEGlyphStorage& storage);
|
|
|
|
};
|
|
|
|
|
2005-06-24 23:55:37 +00:00
|
|
|
U_NAMESPACE_END
|
|
|
|
|
2005-01-14 19:22:53 +00:00
|
|
|
#endif
|