Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / third_party / ots / src / kern.h
blob9350ef7f8cc0d8010ee84e0a939da0611b4c9b34
1 // 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.
5 #ifndef OTS_KERN_H_
6 #define OTS_KERN_H_
8 #include <vector>
10 #include "ots.h"
12 namespace ots {
14 struct OpenTypeKERNFormat0Pair {
15 uint16_t left;
16 uint16_t right;
17 int16_t value;
20 struct 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;
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.
33 struct OpenTypeKERN {
34 uint16_t version;
35 std::vector<OpenTypeKERNFormat0> subtables;
38 } // namespace ots
40 #endif // OTS_KERN_H_