Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
SkOTTable_OS_2_V4.h
Go to the documentation of this file.
1/*
2 * Copyright 2012 Google Inc.
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7
8#ifndef SkOTTable_OS_2_V4_DEFINED
9#define SkOTTable_OS_2_V4_DEFINED
10
11#include "src/base/SkEndian.h"
14#include "src/sfnt/SkPanose.h"
15
16#pragma pack(push, 1)
17
21
50 union Type {
51 struct Field {
52 //8-15
54 NoSubsetting,
55 Bitmap,
56 Reserved10,
57 Reserved11,
58 Reserved12,
59 Reserved13,
60 Reserved14,
61 Reserved15)
62 //0-7
64 Reserved00,
71 Reserved07)
96 struct Field {
97 //l0 24-31
99 Thai,
100 Lao,
101 Georgian,
102 Balinese,
103 HangulJamo,
104 LatinExtendedAdditional,
105 GreekExtended,
106 GeneralPunctuation)
107 //l0 16-23
109 Bengali,
116 Malayalam)
117 //l0 8-15
119 Coptic,
120 Cyrillic,
121 Armenian,
122 Hebrew,
123 Vai,
124 Arabic,
125 NKo,
126 Devanagari)
127 //l0 0-7
129 BasicLatin,
136 GreekAndCoptic)
137
138 //l1 24-31
140 Hangul,
141 NonPlane0,
142 Phoenician,
143 CJKUnifiedIdeographs,
144 PrivateUseArea,
145 CJKCompatibilityIdeographs,
146 AlphabeticPresentationForms,
147 ArabicPresentationFormsA)
148 //l1 16-23
150 CJKSymbolsAndPunctuation,
157 CJKCompatibility)
158 //l1 8-15
160 ControlPictures,
161 OpticalCharacterRecognition,
162 EnclosedAlphanumerics,
163 BoxDrawing,
164 BlockElements,
165 GeometricShapes,
166 MiscellaneousSymbols,
167 Dingbats)
168 //l1 0-7
170 SuperscriptsAndSubscripts,
177 MiscellaneousTechnical)
178
179 //l2 24-31
181 MusicalSymbols,
182 MathematicalAlphanumericSymbols,
183 PrivateUse,
184 VariationSelectors,
185 Tags,
186 Limbu,
187 TaiLe,
188 NewTaiLue)
189 //l2 16-23
191 Khmer,
198 Deseret)
199 //l2 8-15
201 Thaana,
202 Sinhala,
203 Myanmar,
204 Ethiopic,
205 Cherokee,
206 UnifiedCanadianSyllabics,
207 Ogham,
208 Runic)
209 //l2 0-7
211 CombiningHalfMarks,
218 Syriac)
219
220 //l3 24-31
222 PhaistosDisc,
223 Carian_Lycian_Lydian,
224 DominoTiles_MahjongTiles,
225 Reserved123,
226 Reserved124,
227 Reserved125,
228 Reserved126,
229 Reserved127)
230 //l3 16-23
232 Sundanese,
239 AncientSymbols)
240 //l3 8-15
242 OldPersian,
243 Shavian,
244 Osmanya,
245 CypriotSyllabary,
246 Kharoshthi,
247 TaiXuanJingSymbols,
248 Cuneiform,
249 CountingRodNumerals)
250 //l3 0-7
252 Buginese,
259 Ugaritic)
261 struct Raw {
262 struct l0 {
263 static const SK_OT_ULONG BasicLatinMask = SkOTSetULONGBit<0>::value;
264 static const SK_OT_ULONG Latin1SupplementMask = SkOTSetULONGBit<1>::value;
265 static const SK_OT_ULONG LatinExtendedAMask = SkOTSetULONGBit<2>::value;
266 static const SK_OT_ULONG LatinExtendedBMask = SkOTSetULONGBit<3>::value;
267 static const SK_OT_ULONG IPAExtensionsMask = SkOTSetULONGBit<4>::value;
268 static const SK_OT_ULONG SpacingModifierLettersMask = SkOTSetULONGBit<5>::value;
269 static const SK_OT_ULONG CombiningDiacriticalMarksMask = SkOTSetULONGBit<6>::value;
270 static const SK_OT_ULONG GreekAndCopticMask = SkOTSetULONGBit<7>::value;
271 static const SK_OT_ULONG CopticMask = SkOTSetULONGBit<8>::value;
272 static const SK_OT_ULONG CyrillicMask = SkOTSetULONGBit<9>::value;
273 static const SK_OT_ULONG ArmenianMask = SkOTSetULONGBit<10>::value;
274 static const SK_OT_ULONG HebrewMask = SkOTSetULONGBit<11>::value;
276 static const SK_OT_ULONG ArabicMask = SkOTSetULONGBit<13>::value;
278 static const SK_OT_ULONG DevanagariMask = SkOTSetULONGBit<15>::value;
279 static const SK_OT_ULONG BengaliMask = SkOTSetULONGBit<16>::value;
280 static const SK_OT_ULONG GurmukhiMask = SkOTSetULONGBit<17>::value;
281 static const SK_OT_ULONG GujaratiMask = SkOTSetULONGBit<18>::value;
282 static const SK_OT_ULONG OriyaMask = SkOTSetULONGBit<19>::value;
283 static const SK_OT_ULONG TamilMask = SkOTSetULONGBit<20>::value;
284 static const SK_OT_ULONG TeluguMask = SkOTSetULONGBit<21>::value;
285 static const SK_OT_ULONG KannadaMask = SkOTSetULONGBit<22>::value;
286 static const SK_OT_ULONG MalayalamMask = SkOTSetULONGBit<23>::value;
289 static const SK_OT_ULONG GeorgianMask = SkOTSetULONGBit<26>::value;
290 static const SK_OT_ULONG BalineseMask = SkOTSetULONGBit<27>::value;
291 static const SK_OT_ULONG HangulJamoMask = SkOTSetULONGBit<28>::value;
292 static const SK_OT_ULONG LatinExtendedAdditionalMask = SkOTSetULONGBit<29>::value;
293 static const SK_OT_ULONG GreekExtendedMask = SkOTSetULONGBit<30>::value;
294 static const SK_OT_ULONG GeneralPunctuationMask = SkOTSetULONGBit<31>::value;
295 };
296 struct l1 {
297 static const SK_OT_ULONG SuperscriptsAndSubscriptsMask = SkOTSetULONGBit<32 - 32>::value;
298 static const SK_OT_ULONG CurrencySymbolsMask = SkOTSetULONGBit<33 - 32>::value;
299 static const SK_OT_ULONG CombiningDiacriticalMarksForSymbolsMask = SkOTSetULONGBit<34 - 32>::value;
300 static const SK_OT_ULONG LetterlikeSymbolsMask = SkOTSetULONGBit<35 - 32>::value;
301 static const SK_OT_ULONG NumberFormsMask = SkOTSetULONGBit<36 - 32>::value;
302 static const SK_OT_ULONG ArrowsMask = SkOTSetULONGBit<37 - 32>::value;
303 static const SK_OT_ULONG MathematicalOperatorsMask = SkOTSetULONGBit<38 - 32>::value;
304 static const SK_OT_ULONG MiscellaneousTechnicalMask = SkOTSetULONGBit<39 - 32>::value;
305 static const SK_OT_ULONG ControlPicturesMask = SkOTSetULONGBit<40 - 32>::value;
306 static const SK_OT_ULONG OpticalCharacterRecognitionMask = SkOTSetULONGBit<41 - 32>::value;
307 static const SK_OT_ULONG EnclosedAlphanumericsMask = SkOTSetULONGBit<42 - 32>::value;
308 static const SK_OT_ULONG BoxDrawingMask = SkOTSetULONGBit<43 - 32>::value;
309 static const SK_OT_ULONG BlockElementsMask = SkOTSetULONGBit<44 - 32>::value;
310 static const SK_OT_ULONG GeometricShapesMask = SkOTSetULONGBit<45 - 32>::value;
311 static const SK_OT_ULONG MiscellaneousSymbolsMask = SkOTSetULONGBit<46 - 32>::value;
312 static const SK_OT_ULONG DingbatsMask = SkOTSetULONGBit<47 - 32>::value;
313 static const SK_OT_ULONG CJKSymbolsAndPunctuationMask = SkOTSetULONGBit<48 - 32>::value;
314 static const SK_OT_ULONG HiraganaMask = SkOTSetULONGBit<49 - 32>::value;
315 static const SK_OT_ULONG KatakanaMask = SkOTSetULONGBit<50 - 32>::value;
316 static const SK_OT_ULONG BopomofoMask = SkOTSetULONGBit<51 - 32>::value;
317 static const SK_OT_ULONG HangulCompatibilityJamoMask = SkOTSetULONGBit<52 - 32>::value;
318 static const SK_OT_ULONG PhagsPaMask = SkOTSetULONGBit<53 - 32>::value;
319 static const SK_OT_ULONG EnclosedCJKLettersAndMonthsMask = SkOTSetULONGBit<54 - 32>::value;
320 static const SK_OT_ULONG CJKCompatibilityMask = SkOTSetULONGBit<55 - 32>::value;
321 static const SK_OT_ULONG HangulMask = SkOTSetULONGBit<56 - 32>::value;
322 static const SK_OT_ULONG NonPlane0Mask = SkOTSetULONGBit<57 - 32>::value;
323 static const SK_OT_ULONG PhoenicianMask = SkOTSetULONGBit<58 - 32>::value;
324 static const SK_OT_ULONG CJKUnifiedIdeographsMask = SkOTSetULONGBit<59 - 32>::value;
325 static const SK_OT_ULONG PrivateUseAreaMask = SkOTSetULONGBit<60 - 32>::value;
326 static const SK_OT_ULONG CJKCompatibilityIdeographsMask = SkOTSetULONGBit<61 - 32>::value;
327 static const SK_OT_ULONG AlphabeticPresentationFormsMask = SkOTSetULONGBit<62 - 32>::value;
328 static const SK_OT_ULONG ArabicPresentationFormsAMask = SkOTSetULONGBit<63 - 32>::value;
329 };
330 struct l2 {
331 static const SK_OT_ULONG CombiningHalfMarksMask = SkOTSetULONGBit<64 - 64>::value;
332 static const SK_OT_ULONG CJKCompatibilityFormsMask = SkOTSetULONGBit<65 - 64>::value;
333 static const SK_OT_ULONG SmallFormVariantsMask = SkOTSetULONGBit<66 - 64>::value;
334 static const SK_OT_ULONG ArabicPresentationFormsBMask = SkOTSetULONGBit<67 - 64>::value;
335 static const SK_OT_ULONG HalfwidthAndFullwidthFormsMask = SkOTSetULONGBit<68 - 64>::value;
336 static const SK_OT_ULONG SpecialsMask = SkOTSetULONGBit<69 - 64>::value;
337 static const SK_OT_ULONG TibetanMask = SkOTSetULONGBit<70 - 64>::value;
338 static const SK_OT_ULONG SyriacMask = SkOTSetULONGBit<71 - 64>::value;
339 static const SK_OT_ULONG ThaanaMask = SkOTSetULONGBit<72 - 64>::value;
340 static const SK_OT_ULONG SinhalaMask = SkOTSetULONGBit<73 - 64>::value;
341 static const SK_OT_ULONG MyanmarMask = SkOTSetULONGBit<74 - 64>::value;
342 static const SK_OT_ULONG EthiopicMask = SkOTSetULONGBit<75 - 64>::value;
343 static const SK_OT_ULONG CherokeeMask = SkOTSetULONGBit<76 - 64>::value;
344 static const SK_OT_ULONG UnifiedCanadianSyllabicsMask = SkOTSetULONGBit<77 - 64>::value;
345 static const SK_OT_ULONG OghamMask = SkOTSetULONGBit<78 - 64>::value;
346 static const SK_OT_ULONG RunicMask = SkOTSetULONGBit<79 - 64>::value;
347 static const SK_OT_ULONG KhmerMask = SkOTSetULONGBit<80 - 64>::value;
348 static const SK_OT_ULONG MongolianMask = SkOTSetULONGBit<81 - 64>::value;
349 static const SK_OT_ULONG BrailleMask = SkOTSetULONGBit<82 - 64>::value;
350 static const SK_OT_ULONG YiMask = SkOTSetULONGBit<83 - 64>::value;
351 static const SK_OT_ULONG Tagalog_Hanunoo_Buhid_TagbanwaMask = SkOTSetULONGBit<84 - 64>::value;
352 static const SK_OT_ULONG OldItalicMask = SkOTSetULONGBit<85 - 64>::value;
353 static const SK_OT_ULONG GothicMask = SkOTSetULONGBit<86 - 64>::value;
354 static const SK_OT_ULONG DeseretMask = SkOTSetULONGBit<87 - 64>::value;
355 static const SK_OT_ULONG MusicalSymbolsMask = SkOTSetULONGBit<88 - 64>::value;
356 static const SK_OT_ULONG MathematicalAlphanumericSymbolsMask = SkOTSetULONGBit<89 - 64>::value;
357 static const SK_OT_ULONG PrivateUseMask = SkOTSetULONGBit<90 - 64>::value;
358 static const SK_OT_ULONG VariationSelectorsMask = SkOTSetULONGBit<91 - 64>::value;
359 static const SK_OT_ULONG TagsMask = SkOTSetULONGBit<92 - 64>::value;
360 static const SK_OT_ULONG LimbuMask = SkOTSetULONGBit<93 - 64>::value;
361 static const SK_OT_ULONG TaiLeMask = SkOTSetULONGBit<94 - 64>::value;
362 static const SK_OT_ULONG NewTaiLueMask = SkOTSetULONGBit<95 - 64>::value;
363 };
364 struct l3 {
365 static const SK_OT_ULONG BugineseMask = SkOTSetULONGBit<96 - 96>::value;
366 static const SK_OT_ULONG GlagoliticMask = SkOTSetULONGBit<97 - 96>::value;
367 static const SK_OT_ULONG TifinaghMask = SkOTSetULONGBit<98 - 96>::value;
368 static const SK_OT_ULONG YijingHexagramSymbolsMask = SkOTSetULONGBit<99 - 96>::value;
369 static const SK_OT_ULONG SylotiNagriMask = SkOTSetULONGBit<100 - 96>::value;
370 static const SK_OT_ULONG LinearB_AegeanNumbersMask = SkOTSetULONGBit<101 - 96>::value;
371 static const SK_OT_ULONG AncientGreekNumbersMask = SkOTSetULONGBit<102 - 96>::value;
372 static const SK_OT_ULONG UgariticMask = SkOTSetULONGBit<103 - 96>::value;
373 static const SK_OT_ULONG OldPersianMask = SkOTSetULONGBit<104 - 96>::value;
374 static const SK_OT_ULONG ShavianMask = SkOTSetULONGBit<105 - 96>::value;
375 static const SK_OT_ULONG OsmanyaMask = SkOTSetULONGBit<106 - 96>::value;
376 static const SK_OT_ULONG CypriotSyllabaryMask = SkOTSetULONGBit<107 - 96>::value;
377 static const SK_OT_ULONG KharoshthiMask = SkOTSetULONGBit<108 - 96>::value;
378 static const SK_OT_ULONG TaiXuanJingSymbolsMask = SkOTSetULONGBit<109 - 96>::value;
379 static const SK_OT_ULONG CuneiformMask = SkOTSetULONGBit<110 - 96>::value;
380 static const SK_OT_ULONG CountingRodNumeralsMask = SkOTSetULONGBit<111 - 96>::value;
381 static const SK_OT_ULONG SundaneseMask = SkOTSetULONGBit<112 - 96>::value;
382 static const SK_OT_ULONG LepchaMask = SkOTSetULONGBit<113 - 96>::value;
383 static const SK_OT_ULONG OlChikiMask = SkOTSetULONGBit<114 - 96>::value;
384 static const SK_OT_ULONG SaurashtraMask = SkOTSetULONGBit<115 - 96>::value;
385 static const SK_OT_ULONG KayahLiMask = SkOTSetULONGBit<116 - 96>::value;
386 static const SK_OT_ULONG RejangMask = SkOTSetULONGBit<117 - 96>::value;
387 static const SK_OT_ULONG ChamMask = SkOTSetULONGBit<118 - 96>::value;
388 static const SK_OT_ULONG AncientSymbolsMask = SkOTSetULONGBit<119 - 96>::value;
389 static const SK_OT_ULONG PhaistosDiscMask = SkOTSetULONGBit<120 - 96>::value;
390 static const SK_OT_ULONG Carian_Lycian_LydianMask = SkOTSetULONGBit<121 - 96>::value;
391 static const SK_OT_ULONG DominoTiles_MahjongTilesMask = SkOTSetULONGBit<122 - 96>::value;
392 };
397 union Selection {
398 struct Field {
399 //8-15
401 WWS,
402 Oblique,
403 Reserved10,
404 Reserved11,
405 Reserved12,
406 Reserved13,
407 Reserved14,
408 Reserved15)
409 //0-7
411 Italic,
412 Underscore,
413 Negative,
414 Outlined,
415 Strikeout,
416 Bold,
417 Regular,
418 UseTypoMetrics)
419 } field;
420 struct Raw {
421 static const SK_OT_USHORT ItalicMask = SkOTSetUSHORTBit<0>::value;
422 static const SK_OT_USHORT UnderscoreMask = SkOTSetUSHORTBit<1>::value;
423 static const SK_OT_USHORT NegativeMask = SkOTSetUSHORTBit<2>::value;
424 static const SK_OT_USHORT OutlinedMask = SkOTSetUSHORTBit<3>::value;
425 static const SK_OT_USHORT StrikeoutMask = SkOTSetUSHORTBit<4>::value;
427 static const SK_OT_USHORT RegularMask = SkOTSetUSHORTBit<6>::value;
428 static const SK_OT_USHORT UseTypoMetricsMask = SkOTSetUSHORTBit<7>::value;
430 static const SK_OT_USHORT ObliqueMask = SkOTSetUSHORTBit<9>::value;
432 } raw;
436 //version0
442 //version1
444 struct Field {
445 //l0 24-31
447 Reserved24,
448 Reserved25,
449 Reserved26,
450 Reserved27,
451 Reserved28,
452 MacintoshCharacterSet,
453 OEMCharacterSet,
454 SymbolCharacterSet)
455 //l0 16-23
457 Thai_874,
458 JISJapan_932,
459 ChineseSimplified_936,
460 KoreanWansung_949,
461 ChineseTraditional_950,
462 KoreanJohab_1361,
463 Reserved22,
464 Reserved23)
465 //l0 8-15
467 Vietnamese,
468 Reserved09,
469 Reserved10,
470 Reserved11,
471 Reserved12,
472 Reserved13,
473 Reserved14,
474 Reserved15)
475 //l0 0-7
477 Latin1_1252,
478 Latin2EasternEurope_1250,
479 Cyrillic_1251,
480 Greek_1253,
481 Turkish_1254,
482 Hebrew_1255,
483 Arabic_1256,
484 WindowsBaltic_1257)
485
486 //l1 24-31
488 IBMTurkish_857,
489 IBMCyrillic_855,
490 Latin2_852,
491 MSDOSBaltic_775,
492 Greek_737,
493 Arabic_708,
494 WELatin1_850,
495 US_437)
496 //l1 16-23
498 IBMGreek_869,
499 MSDOSRussian_866,
500 MSDOSNordic_865,
501 Arabic_864,
502 MSDOSCanadianFrench_863,
503 Hebrew_862,
504 MSDOSIcelandic_861,
505 MSDOSPortuguese_860)
506 //l1 8-15
508 Reserved40,
509 Reserved41,
510 Reserved42,
511 Reserved43,
512 Reserved44,
513 Reserved45,
514 Reserved46,
515 Reserved47)
516 //l1 0-7
518 Reserved32,
519 Reserved33,
520 Reserved34,
521 Reserved35,
522 Reserved36,
523 Reserved37,
524 Reserved38,
525 Reserved39)
526 } field;
527 struct Raw {
528 struct l0 {
529 static const SK_OT_ULONG Latin1_1252Mask = SkOTSetULONGBit<0>::value;
530 static const SK_OT_ULONG Latin2EasternEurope_1250Mask = SkOTSetULONGBit<1>::value;
531 static const SK_OT_ULONG Cyrillic_1251Mask = SkOTSetULONGBit<2>::value;
532 static const SK_OT_ULONG Greek_1253Mask = SkOTSetULONGBit<3>::value;
533 static const SK_OT_ULONG Turkish_1254Mask = SkOTSetULONGBit<4>::value;
534 static const SK_OT_ULONG Hebrew_1255Mask = SkOTSetULONGBit<5>::value;
535 static const SK_OT_ULONG Arabic_1256Mask = SkOTSetULONGBit<6>::value;
536 static const SK_OT_ULONG WindowsBaltic_1257Mask = SkOTSetULONGBit<7>::value;
537 static const SK_OT_ULONG Vietnamese_1258Mask = SkOTSetULONGBit<8>::value;
538 static const SK_OT_ULONG Thai_874Mask = SkOTSetULONGBit<16>::value;
539 static const SK_OT_ULONG JISJapan_932Mask = SkOTSetULONGBit<17>::value;
540 static const SK_OT_ULONG ChineseSimplified_936Mask = SkOTSetULONGBit<18>::value;
541 static const SK_OT_ULONG KoreanWansung_949Mask = SkOTSetULONGBit<19>::value;
542 static const SK_OT_ULONG ChineseTraditional_950Mask = SkOTSetULONGBit<20>::value;
543 static const SK_OT_ULONG KoreanJohab_1361Mask = SkOTSetULONGBit<21>::value;
544 static const SK_OT_ULONG MacintoshCharacterSetMask = SkOTSetULONGBit<29>::value;
545 static const SK_OT_ULONG OEMCharacterSetMask = SkOTSetULONGBit<30>::value;
546 static const SK_OT_ULONG SymbolCharacterSetMask = SkOTSetULONGBit<31>::value;
547 };
548 struct l1 {
549 static const SK_OT_ULONG IBMGreek_869Mask = SkOTSetULONGBit<48 - 32>::value;
550 static const SK_OT_ULONG MSDOSRussian_866Mask = SkOTSetULONGBit<49 - 32>::value;
551 static const SK_OT_ULONG MSDOSNordic_865Mask = SkOTSetULONGBit<50 - 32>::value;
552 static const SK_OT_ULONG Arabic_864Mask = SkOTSetULONGBit<51 - 32>::value;
553 static const SK_OT_ULONG MSDOSCanadianFrench_863Mask = SkOTSetULONGBit<52 - 32>::value;
554 static const SK_OT_ULONG Hebrew_862Mask = SkOTSetULONGBit<53 - 32>::value;
555 static const SK_OT_ULONG MSDOSIcelandic_861Mask = SkOTSetULONGBit<54 - 32>::value;
556 static const SK_OT_ULONG MSDOSPortuguese_860Mask = SkOTSetULONGBit<55 - 32>::value;
557 static const SK_OT_ULONG IBMTurkish_857Mask = SkOTSetULONGBit<56 - 32>::value;
558 static const SK_OT_ULONG IBMCyrillic_855Mask = SkOTSetULONGBit<57 - 32>::value;
559 static const SK_OT_ULONG Latin2_852Mask = SkOTSetULONGBit<58 - 32>::value;
560 static const SK_OT_ULONG MSDOSBaltic_775Mask = SkOTSetULONGBit<59 - 32>::value;
561 static const SK_OT_ULONG Greek_737Mask = SkOTSetULONGBit<60 - 32>::value;
562 static const SK_OT_ULONG Arabic_708Mask = SkOTSetULONGBit<61 - 32>::value;
563 static const SK_OT_ULONG WELatin1_850Mask = SkOTSetULONGBit<62 - 32>::value;
564 static const SK_OT_ULONG US_437Mask = SkOTSetULONGBit<63 - 32>::value;
565 };
567 } raw;
568 } ulCodePageRange;
569 //version2
575};
576
577#pragma pack(pop)
578
579
580static_assert(sizeof(SkOTTableOS2_V4) == 96, "sizeof_SkOTTableOS2_V4_not_96");
581
582#endif
#define SkTEndian_SwapBE16(n)
Definition SkEndian.h:142
uint16_t SK_OT_USHORT
uint32_t SK_OT_ULONG
int8_t SK_OT_CHAR
uint16_t SK_OT_SHORT
#define SK_OT_BYTE_BITFIELD
uint8_t value
SK_OT_BYTE_BITFIELD(Reserved24, Reserved25, Reserved26, Reserved27, Reserved28, MacintoshCharacterSet, OEMCharacterSet, SymbolCharacterSet) SK_OT_BYTE_BITFIELD(Thai_874
SK_OT_BYTE_BITFIELD(WWS, Oblique, Reserved10, Reserved11, Reserved12, Reserved13, Reserved14, Reserved15) SK_OT_BYTE_BITFIELD(Italic
SK_OT_BYTE_BITFIELD(NoSubsetting, Bitmap, Reserved10, Reserved11, Reserved12, Reserved13, Reserved14, Reserved15) SK_OT_BYTE_BITFIELD(Reserved00
static const SK_OT_USHORT Installable
static const SK_OT_USHORT RestrictedMask
static const SK_OT_USHORT NoSubsettingMask
static const SK_OT_USHORT EditableMask
static const SK_OT_USHORT BitmapMask
static const SK_OT_USHORT PreviewPrintMask
SK_OT_BYTE_BITFIELD(Thai, Lao, Georgian, Balinese, HangulJamo, LatinExtendedAdditional, GreekExtended, GeneralPunctuation) SK_OT_BYTE_BITFIELD(Bengali
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret Syriac AncientSymbols LinearB_AegeanNumbers
Malayalam GreekAndCoptic HangulCompatibilityJamo
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret Syriac OlChiki
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret Syriac KayahLi
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret Syriac AncientSymbols Tifinagh
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret HalfwidthAndFullwidthForms
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret Syriac Cham
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret Syriac Lepcha
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret Syriac Rejang
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret SmallFormVariants
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret CJKCompatibilityForms
Malayalam GreekAndCoptic CJKCompatibility CurrencySymbols
Malayalam GreekAndCoptic CJKCompatibility Arrows
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Yi
Malayalam GreekAndCoptic CJKCompatibility LetterlikeSymbols
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret Syriac Saurashtra
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical OldItalic
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Gothic
Malayalam GreekAndCoptic EnclosedCJKLettersAndMonths
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Mongolian
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Tagalog_Hanunoo_Buhid_Tagbanwa
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret Syriac AncientSymbols YijingHexagramSymbols
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret Tibetan
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret ArabicPresentationFormsB
Malayalam GreekAndCoptic CJKCompatibility NumberForms
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Braille
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret Specials
Malayalam GreekAndCoptic CJKCompatibility MathematicalOperators
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret Syriac AncientSymbols Glagolitic
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret Syriac AncientSymbols SylotiNagri
Malayalam GreekAndCoptic CJKCompatibility CombiningDiacriticalMarksForSymbols
Malayalam GreekAndCoptic CJKCompatibility MiscellaneousTechnical Deseret Syriac AncientSymbols AncientGreekNumbers
enum SkOTTableOS2_V4::WidthClass::Value value
SK_OT_SHORT sTypoAscender
SK_OT_SHORT ySubscriptXSize
union SkOTTableOS2_V4::Type fsType
SK_OT_SHORT sTypoLineGap
union SkOTTableOS2_V4::Selection fsSelection
SK_OT_USHORT usLastCharIndex
SK_OT_SHORT ySubscriptYOffset
SK_OT_SHORT ySubscriptXOffset
SK_OT_SHORT yStrikeoutSize
struct SkOTTableOS2_V4::WidthClass usWidthClass
SK_OT_SHORT xAvgCharWidth
SK_OT_SHORT ySubscriptYSize
union SkOTTableOS2_V4::UnicodeRange ulUnicodeRange
SK_OT_USHORT usFirstCharIndex
SK_OT_USHORT usBreakChar
SK_OT_USHORT usDefaultChar
SK_OT_USHORT usMaxContext
SK_OT_USHORT version
SK_OT_USHORT usWinDescent
SK_OT_USHORT usWinAscent
static const SK_OT_USHORT VERSION
SkIBMFamilyClass sFamilyClass
SK_OT_SHORT ySuperscriptYSize
SK_OT_SHORT sTypoDescender
SK_OT_SHORT ySuperscriptYOffset
struct SkOTTableOS2_V4::WeightClass usWeightClass
SK_OT_SHORT yStrikeoutPosition
SK_OT_SHORT ySuperscriptXSize
SK_OT_CHAR achVendID[4]
SK_OT_SHORT ySuperscriptXOffset
struct SkOTTableOS2_V4::Type::Field field
struct SkOTTableOS2_V4::Type::Raw raw
struct SkOTTableOS2_V4::UnicodeRange::Field field
struct SkOTTableOS2_V4::UnicodeRange::Raw raw