vorg.h (775B)
1 // Copyright (c) 2009-2017 The OTS 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_VORG_H_ 6 #define OTS_VORG_H_ 7 8 #include <vector> 9 10 #include "ots.h" 11 12 namespace ots { 13 14 struct OpenTypeVORGMetrics { 15 uint16_t glyph_index; 16 int16_t vert_origin_y; 17 }; 18 19 class OpenTypeVORG : public Table { 20 public: 21 explicit OpenTypeVORG(Font *font, uint32_t tag) 22 : Table(font, tag, tag) { } 23 24 bool Parse(const uint8_t *data, size_t length); 25 bool Serialize(OTSStream *out); 26 bool ShouldSerialize(); 27 28 private: 29 uint16_t major_version; 30 uint16_t minor_version; 31 int16_t default_vert_origin_y; 32 std::vector<OpenTypeVORGMetrics> metrics; 33 }; 34 35 } // namespace ots 36 37 #endif // OTS_VORG_H_