os/textandloc/fontservices/textshaperplugin/IcuSource/layout/KernTable.h
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
sl@0
     1
/*
sl@0
     2
 * @(#)KernTable.h	1.1 04/10/13
sl@0
     3
 *
sl@0
     4
 * (C) Copyright IBM Corp. 2004-2005 - All Rights Reserved
sl@0
     5
 *
sl@0
     6
 */
sl@0
     7
sl@0
     8
#ifndef __KERNTABLE_H
sl@0
     9
#define __KERNTABLE_H
sl@0
    10
sl@0
    11
#ifndef __LETYPES_H
sl@0
    12
#include "LETypes.h"
sl@0
    13
#endif
sl@0
    14
sl@0
    15
#include "LETypes.h"
sl@0
    16
#include "LEFontInstance.h"
sl@0
    17
#include "LEGlyphStorage.h"
sl@0
    18
sl@0
    19
#include <stdio.h>
sl@0
    20
sl@0
    21
U_NAMESPACE_BEGIN
sl@0
    22
struct PairInfo;
sl@0
    23
sl@0
    24
/**
sl@0
    25
 * Windows type 0 kerning table support only for now.
sl@0
    26
 */
sl@0
    27
class U_LAYOUT_API KernTable
sl@0
    28
{
sl@0
    29
 private:
sl@0
    30
  le_uint16 coverage;
sl@0
    31
  le_uint16 nPairs;
sl@0
    32
  const PairInfo* pairs;
sl@0
    33
  const LEFontInstance* font;
sl@0
    34
  le_uint16 searchRange;
sl@0
    35
  le_uint16 entrySelector;
sl@0
    36
  le_uint16 rangeShift;
sl@0
    37
sl@0
    38
 public:
sl@0
    39
  KernTable(const LEFontInstance* font, const void* tableData);
sl@0
    40
sl@0
    41
  /*
sl@0
    42
   * Process the glyph positions.
sl@0
    43
   */
sl@0
    44
  void process(LEGlyphStorage& storage);
sl@0
    45
};
sl@0
    46
sl@0
    47
U_NAMESPACE_END
sl@0
    48
sl@0
    49
#endif