Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5)

Side by Side Diff: src/gpos.cc

Issue 13918002: [OTS] Integrate WOFF 2.0 algorithm into OTS (Closed) Base URL: http://ots.googlecode.com/svn/trunk/
Patch Set: Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « ots-common.gypi ('k') | src/gsub.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "gpos.h" 5 #include "gpos.h"
6 6
7 #include <limits> 7 #include <limits>
8 #include <vector> 8 #include <vector>
9 9
10 #include "gdef.h" 10 #include "gdef.h"
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 {GPOS_TYPE_PAIR_ADJUSTMENT, ParsePairAdjustment}, 62 {GPOS_TYPE_PAIR_ADJUSTMENT, ParsePairAdjustment},
63 {GPOS_TYPE_CURSIVE_ATTACHMENT, ParseCursiveAttachment}, 63 {GPOS_TYPE_CURSIVE_ATTACHMENT, ParseCursiveAttachment},
64 {GPOS_TYPE_MARK_TO_BASE_ATTACHMENT, ParseMarkToBaseAttachment}, 64 {GPOS_TYPE_MARK_TO_BASE_ATTACHMENT, ParseMarkToBaseAttachment},
65 {GPOS_TYPE_MARK_TO_LIGATURE_ATTACHMENT, ParseMarkToLigatureAttachment}, 65 {GPOS_TYPE_MARK_TO_LIGATURE_ATTACHMENT, ParseMarkToLigatureAttachment},
66 {GPOS_TYPE_MARK_TO_MARK_ATTACHMENT, ParseMarkToMarkAttachment}, 66 {GPOS_TYPE_MARK_TO_MARK_ATTACHMENT, ParseMarkToMarkAttachment},
67 {GPOS_TYPE_CONTEXT_POSITIONING, ParseContextPositioning}, 67 {GPOS_TYPE_CONTEXT_POSITIONING, ParseContextPositioning},
68 {GPOS_TYPE_CHAINED_CONTEXT_POSITIONING, ParseChainedContextPositioning}, 68 {GPOS_TYPE_CHAINED_CONTEXT_POSITIONING, ParseChainedContextPositioning},
69 {GPOS_TYPE_EXTENSION_POSITIONING, ParseExtensionPositioning} 69 {GPOS_TYPE_EXTENSION_POSITIONING, ParseExtensionPositioning}
70 }; 70 };
71 71
72 // TODO(bashi): Port Chromium's arraysize macro and use it instead of sizeof().
73 const ots::LookupSubtableParser kGposLookupSubtableParser = { 72 const ots::LookupSubtableParser kGposLookupSubtableParser = {
74 sizeof(kGposTypeParsers) / sizeof(kGposTypeParsers[0]), 73 arraysize(kGposTypeParsers),
75 GPOS_TYPE_EXTENSION_POSITIONING, kGposTypeParsers 74 GPOS_TYPE_EXTENSION_POSITIONING, kGposTypeParsers
76 }; 75 };
77 76
78 // Shared Tables: ValueRecord, Anchor Table, and MarkArray 77 // Shared Tables: ValueRecord, Anchor Table, and MarkArray
79 78
80 bool ParseValueRecord(ots::Buffer* subtable, const uint8_t *data, 79 bool ParseValueRecord(ots::Buffer* subtable, const uint8_t *data,
81 const size_t length, const uint16_t value_format) { 80 const size_t length, const uint16_t value_format) {
82 // Check existence of adjustment fields. 81 // Check existence of adjustment fields.
83 for (unsigned i = 0; i < 4; ++i) { 82 for (unsigned i = 0; i < 4; ++i) {
84 if ((value_format >> i) & 0x1) { 83 if ((value_format >> i) & 0x1) {
(...skipping 717 matching lines...) Expand 10 before | Expand all | Expand 10 after
802 801
803 return true; 802 return true;
804 } 803 }
805 804
806 void ots_gpos_free(OpenTypeFile *file) { 805 void ots_gpos_free(OpenTypeFile *file) {
807 delete file->gpos; 806 delete file->gpos;
808 } 807 }
809 808
810 } // namespace ots 809 } // namespace ots
811 810
OLDNEW
« no previous file with comments | « ots-common.gypi ('k') | src/gsub.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698