blob: 9350ef7f8cc0d8010ee84e0a939da0611b4c9b34 [file] [log] [blame]
yusukes@chromium.orgf12575f2010-02-02 21:26:17 +00001// Copyright (c) 2009 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef OTS_KERN_H_
6#define OTS_KERN_H_
7
8#include <vector>
9
10#include "ots.h"
11
12namespace ots {
13
14struct OpenTypeKERNFormat0Pair {
15 uint16_t left;
16 uint16_t right;
17 int16_t value;
18};
19
20struct OpenTypeKERNFormat0 {
21 uint16_t version;
22 uint16_t coverage;
23 uint16_t search_range;
24 uint16_t entry_selector;
25 uint16_t range_shift;
26 std::vector<OpenTypeKERNFormat0Pair> pairs;
27};
28
29// Format 2 is not supported. Since the format is not supported by Windows,
30// WebFonts unlikely use it. I've checked thousands of proprietary fonts and
31// free fonts, and found no font uses the format.
32
33struct OpenTypeKERN {
34 uint16_t version;
35 std::vector<OpenTypeKERNFormat0> subtables;
36};
37
38} // namespace ots
39
40#endif // OTS_KERN_H_