OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2012 Google Inc. | 2 * Copyright 2012 Google Inc. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 | 7 |
8 #ifndef SkPanose_DEFINED | 8 #ifndef SkPanose_DEFINED |
9 #define SkPanose_DEFINED | 9 #define SkPanose_DEFINED |
10 | 10 |
11 #include "SkOTTableTypes.h" | 11 #include "SkOTTableTypes.h" |
12 | 12 |
13 #pragma pack(push, 1) | 13 #pragma pack(push, 1) |
14 | 14 |
15 struct SkPanose { | 15 struct SkPanose { |
16 //This value changes the meaning of the following 9 bytes. | 16 //This value changes the meaning of the following 9 bytes. |
17 struct FamilyType { | 17 enum class FamilyType : SK_OT_BYTE { |
18 enum Value : SK_OT_BYTE { | 18 Any = 0, |
19 Any = 0, | 19 NoFit = 1, |
20 NoFit = 1, | 20 TextAndDisplay = 2, |
21 TextAndDisplay = 2, | 21 Script = 3, |
22 Script = 3, | 22 Decorative = 4, |
23 Decorative = 4, | 23 Pictoral = 5, |
24 Pictoral = 5, | |
25 } value; | |
26 } bFamilyType; | 24 } bFamilyType; |
27 | 25 |
28 union Data { | 26 union Data { |
29 struct TextAndDisplay { | 27 struct TextAndDisplay { |
30 struct SerifStyle { | 28 enum class SerifStyle : SK_OT_BYTE { |
31 enum Value : SK_OT_BYTE { | 29 Any = 0, |
32 Any = 0, | 30 NoFit = 1, |
33 NoFit = 1, | 31 Cove = 2, |
34 Cove = 2, | 32 ObtuseCove = 3, |
35 ObtuseCove = 3, | 33 SquareCove = 4, |
36 SquareCove = 4, | 34 ObtuseSquareCove = 5, |
37 ObtuseSquareCove = 5, | 35 Square = 6, |
38 Square = 6, | 36 Thin = 7, |
39 Thin = 7, | 37 Bone = 8, |
40 Bone = 8, | 38 Exaggerated = 9, |
41 Exaggerated = 9, | 39 Triangle = 10, |
42 Triangle = 10, | 40 NormalSans = 11, |
43 NormalSans = 11, | 41 ObtuseSans = 12, |
44 ObtuseSans = 12, | 42 PerpSans = 13, |
45 PerpSans = 13, | 43 Flared = 14, |
46 Flared = 14, | 44 Rounded = 15, |
47 Rounded = 15, | |
48 } value; | |
49 } bSerifStyle; | 45 } bSerifStyle; |
50 | 46 |
51 struct Weight { | 47 enum class Weight : SK_OT_BYTE { |
52 enum Value : SK_OT_BYTE { | 48 Any = 0, |
53 Any = 0, | 49 NoFit = 1, |
54 NoFit = 1, | 50 VeryLight = 2, |
55 VeryLight = 2, | 51 Light = 3, |
56 Light = 3, | 52 Thin = 4, |
57 Thin = 4, | 53 Book = 5, |
58 Book = 5, | 54 Medium = 6, |
59 Medium = 6, | 55 Demi = 7, |
60 Demi = 7, | 56 Bold = 8, |
61 Bold = 8, | 57 Heavy = 9, |
62 Heavy = 9, | 58 Black = 10, |
63 Black = 10, | 59 ExtraBlack = 11, |
64 ExtraBlack = 11, | |
65 } value; | |
66 } bWeight; | 60 } bWeight; |
67 | 61 |
68 struct Proportion { | 62 enum class Proportion : SK_OT_BYTE { |
69 enum Value : SK_OT_BYTE { | 63 Any = 0, |
70 Any = 0, | 64 NoFit = 1, |
71 NoFit = 1, | 65 OldStyle = 2, |
72 OldStyle = 2, | 66 Modern = 3, |
73 Modern = 3, | 67 EvenWidth = 4, |
74 EvenWidth = 4, | 68 Expanded = 5, |
75 Expanded = 5, | 69 Condensed = 6, |
76 Condensed = 6, | 70 VeryExpanded = 7, |
77 VeryExpanded = 7, | 71 VeryCondensed = 8, |
78 VeryCondensed = 8, | 72 Monospaced = 9, |
79 Monospaced = 9, | |
80 } value; | |
81 } bProportion; | 73 } bProportion; |
82 | 74 |
83 struct Contrast { | 75 enum class Contrast : SK_OT_BYTE { |
84 enum Value : SK_OT_BYTE { | 76 Any = 0, |
85 Any = 0, | 77 NoFit = 1, |
86 NoFit = 1, | 78 None = 2, |
87 None = 2, | 79 VeryLow = 3, |
88 VeryLow = 3, | 80 Low = 4, |
89 Low = 4, | 81 MediumLow = 5, |
90 MediumLow = 5, | 82 Medium = 6, |
91 Medium = 6, | 83 MediumHigh = 7, |
92 MediumHigh = 7, | 84 High = 8, |
93 High = 8, | 85 VeryHigh = 9, |
94 VeryHigh = 9, | |
95 } value; | |
96 } bContrast; | 86 } bContrast; |
97 | 87 |
98 #ifdef SK_WIN_PANOSE | 88 #ifdef SK_WIN_PANOSE |
99 //This is what Windows (and FontForge and Apple TT spec) define. | 89 //This is what Windows (and FontForge and Apple TT spec) define. |
100 //The Impact font uses 9. | 90 //The Impact font uses 9. |
101 struct StrokeVariation { | 91 enum class StrokeVariation : SK_OT_BYTE { |
102 enum Value : SK_OT_BYTE { | 92 Any = 0, |
103 Any = 0, | 93 NoFit = 1, |
104 NoFit = 1, | 94 GradualDiagonal = 2, |
105 GradualDiagonal = 2, | 95 GradualTransitional = 3, |
106 GradualTransitional = 3, | 96 GradualVertical = 4, |
107 GradualVertical = 4, | 97 GradualHorizontal = 5, |
108 GradualHorizontal = 5, | 98 RapidVertical = 6, |
109 RapidVertical = 6, | 99 RapidHorizontal = 7, |
110 RapidHorizontal = 7, | 100 InstantVertical = 8, |
111 InstantVertical = 8, | |
112 } value; | |
113 } bStrokeVariation; | 101 } bStrokeVariation; |
114 #else | 102 #else |
115 //Stroke variation description in OT OS/2 ver0,ver1 is incorrect. | 103 //Stroke variation description in OT OS/2 ver0,ver1 is incorrect. |
116 //This is what HP Panose says. | 104 //This is what HP Panose says. |
117 struct StrokeVariation { | 105 enum class StrokeVariation : SK_OT_BYTE { |
118 enum Value : SK_OT_BYTE { | 106 Any = 0, |
119 Any = 0, | 107 NoFit = 1, |
120 NoFit = 1, | 108 NoVariation = 2, |
121 NoVariation = 2, | 109 Gradual_Diagonal = 3, |
122 Gradual_Diagonal = 3, | 110 Gradual_Transitional = 4, |
123 Gradual_Transitional = 4, | 111 Gradual_Vertical = 5, |
124 Gradual_Vertical = 5, | 112 Gradual_Horizontal = 6, |
125 Gradual_Horizontal = 6, | 113 Rapid_Vertical = 7, |
126 Rapid_Vertical = 7, | 114 Rapid_Horizontal = 8, |
127 Rapid_Horizontal = 8, | 115 Instant_Vertical = 9, |
128 Instant_Vertical = 9, | 116 Instant_Horizontal = 10, |
129 Instant_Horizontal = 10, | |
130 } value; | |
131 } bStrokeVariation; | 117 } bStrokeVariation; |
132 #endif | 118 #endif |
133 | 119 |
134 struct ArmStyle { | 120 enum class ArmStyle : SK_OT_BYTE { |
135 enum Value : SK_OT_BYTE { | 121 Any = 0, |
136 Any = 0, | 122 NoFit = 1, |
137 NoFit = 1, | 123 StraightArms_Horizontal = 2, |
138 StraightArms_Horizontal = 2, | 124 StraightArms_Wedge = 3, |
139 StraightArms_Wedge = 3, | 125 StraightArms_Vertical = 4, |
140 StraightArms_Vertical = 4, | 126 StraightArms_SingleSerif = 5, |
141 StraightArms_SingleSerif = 5, | 127 StraightArms_DoubleSerif = 6, |
142 StraightArms_DoubleSerif = 6, | 128 NonStraightArms_Horizontal = 7, |
143 NonStraightArms_Horizontal = 7, | 129 NonStraightArms_Wedge = 8, |
144 NonStraightArms_Wedge = 8, | 130 NonStraightArms_Vertical = 9, |
145 NonStraightArms_Vertical = 9, | 131 NonStraightArms_SingleSerif = 10, |
146 NonStraightArms_SingleSerif = 10, | 132 NonStraightArms_DoubleSerif = 11, |
147 NonStraightArms_DoubleSerif = 11, | |
148 } value; | |
149 } bArmStyle; | 133 } bArmStyle; |
150 | 134 |
151 struct Letterform { | 135 enum class Letterform : SK_OT_BYTE { |
152 enum Value : SK_OT_BYTE { | 136 Any = 0, |
153 Any = 0, | 137 NoFit = 1, |
154 NoFit = 1, | 138 Normal_Contact = 2, |
155 Normal_Contact = 2, | 139 Normal_Weighted = 3, |
156 Normal_Weighted = 3, | 140 Normal_Boxed = 4, |
157 Normal_Boxed = 4, | 141 Normal_Flattened = 5, |
158 Normal_Flattened = 5, | 142 Normal_Rounded = 6, |
159 Normal_Rounded = 6, | 143 Normal_OffCenter = 7, |
160 Normal_OffCenter = 7, | 144 Normal_Square = 8, |
161 Normal_Square = 8, | 145 Oblique_Contact = 9, |
162 Oblique_Contact = 9, | 146 Oblique_Weighted = 10, |
163 Oblique_Weighted = 10, | 147 Oblique_Boxed = 11, |
164 Oblique_Boxed = 11, | 148 Oblique_Flattened = 12, |
165 Oblique_Flattened = 12, | 149 Oblique_Rounded = 13, |
166 Oblique_Rounded = 13, | 150 Oblique_OffCenter = 14, |
167 Oblique_OffCenter = 14, | 151 Oblique_Square = 15, |
168 Oblique_Square = 15, | |
169 } value; | |
170 } bLetterform; | 152 } bLetterform; |
171 | 153 |
172 struct Midline { | 154 enum class Midline : SK_OT_BYTE { |
173 enum Value : SK_OT_BYTE { | 155 Any = 0, |
174 Any = 0, | 156 NoFit = 1, |
175 NoFit = 1, | 157 Standard_Trimmed = 2, |
176 Standard_Trimmed = 2, | 158 Standard_Pointed = 3, |
177 Standard_Pointed = 3, | 159 Standard_Serifed = 4, |
178 Standard_Serifed = 4, | 160 High_Trimmed = 5, |
179 High_Trimmed = 5, | 161 High_Pointed = 6, |
180 High_Pointed = 6, | 162 High_Serifed = 7, |
181 High_Serifed = 7, | 163 Constant_Trimmed = 8, |
182 Constant_Trimmed = 8, | 164 Constant_Pointed = 9, |
183 Constant_Pointed = 9, | 165 Constant_Serifed = 10, |
184 Constant_Serifed = 10, | 166 Low_Trimmed = 11, |
185 Low_Trimmed = 11, | 167 Low_Pointed = 12, |
186 Low_Pointed = 12, | 168 Low_Serifed = 13, |
187 Low_Serifed = 13, | |
188 } value; | |
189 } bMidline; | 169 } bMidline; |
190 | 170 |
191 struct XHeight { | 171 enum class XHeight : SK_OT_BYTE { |
192 enum Value : SK_OT_BYTE { | 172 Any = 0, |
193 Any = 0, | 173 NoFit = 1, |
194 NoFit = 1, | 174 Constant_Small = 2, |
195 Constant_Small = 2, | 175 Constant_Standard = 3, |
196 Constant_Standard = 3, | 176 Constant_Large = 4, |
197 Constant_Large = 4, | 177 Ducking_Small = 5, |
198 Ducking_Small = 5, | 178 Ducking_Standard = 6, |
199 Ducking_Standard = 6, | 179 Ducking_Large = 7, |
200 Ducking_Large = 7, | |
201 } value; | |
202 } bXHeight; | 180 } bXHeight; |
203 } textAndDisplay; | 181 } textAndDisplay; |
204 | 182 |
205 struct Script { | 183 struct Script { |
206 struct ToolKind { | 184 enum class ToolKind : SK_OT_BYTE { |
207 enum Value : SK_OT_BYTE { | 185 Any = 0, |
208 Any = 0, | 186 NoFit = 1, |
209 NoFit = 1, | 187 FlatNib = 2, |
210 FlatNib = 2, | 188 PressurePoint = 3, |
211 PressurePoint = 3, | 189 Engraved = 4, |
212 Engraved = 4, | 190 Ball = 5, |
213 Ball = 5, | 191 Brush = 6, |
214 Brush = 6, | 192 Rough = 7, |
215 Rough = 7, | 193 FeltPen = 8, |
216 FeltPen = 8, | 194 WildBrush = 9, |
217 WildBrush = 9, | |
218 } value; | |
219 } bToolKind; | 195 } bToolKind; |
220 | 196 |
221 struct Weight { | 197 enum class Weight : SK_OT_BYTE { |
222 enum Value : SK_OT_BYTE { | 198 Any = 0, |
223 Any = 0, | 199 NoFit = 1, |
224 NoFit = 1, | 200 VeryLight = 2, |
225 VeryLight = 2, | 201 Light = 3, |
226 Light = 3, | 202 Thin = 4, |
227 Thin = 4, | 203 Book = 5, |
228 Book = 5, | 204 Medium = 6, |
229 Medium = 6, | 205 Demi = 7, |
230 Demi = 7, | 206 Bold = 8, |
231 Bold = 8, | 207 Heavy = 9, |
232 Heavy = 9, | 208 Black = 10, |
233 Black = 10, | 209 ExtraBlack = 11, |
234 ExtraBlack = 11, | |
235 } value; | |
236 } bWeight; | 210 } bWeight; |
237 | 211 |
238 struct Spacing { | 212 enum class Spacing : SK_OT_BYTE { |
239 enum Value : SK_OT_BYTE { | 213 Any = 0, |
240 Any = 0, | 214 NoFit = 1, |
241 NoFit = 1, | 215 ProportionalSpaced = 2, |
242 ProportionalSpaced = 2, | 216 Monospaced = 3, |
243 Monospaced = 3, | |
244 } value; | |
245 } bSpacing; | 217 } bSpacing; |
246 | 218 |
247 struct AspectRatio { | 219 enum class AspectRatio : SK_OT_BYTE { |
248 enum Value : SK_OT_BYTE { | 220 Any = 0, |
249 Any = 0, | 221 NoFit = 1, |
250 NoFit = 1, | 222 VeryCondensed = 2, |
251 VeryCondensed = 2, | 223 Condensed = 3, |
252 Condensed = 3, | 224 Normal = 4, |
253 Normal = 4, | 225 Expanded = 5, |
254 Expanded = 5, | 226 VeryExpanded = 6, |
255 VeryExpanded = 6, | |
256 } value; | |
257 } bAspectRatio; | 227 } bAspectRatio; |
258 | 228 |
259 struct Contrast { | 229 enum class Contrast : SK_OT_BYTE { |
260 enum Value : SK_OT_BYTE { | 230 Any = 0, |
261 Any = 0, | 231 NoFit = 1, |
262 NoFit = 1, | 232 None = 2, |
263 None = 2, | 233 VeryLow = 3, |
264 VeryLow = 3, | 234 Low = 4, |
265 Low = 4, | 235 MediumLow = 5, |
266 MediumLow = 5, | 236 Medium = 6, |
267 Medium = 6, | 237 MediumHigh = 7, |
268 MediumHigh = 7, | 238 High = 8, |
269 High = 8, | 239 VeryHigh = 9, |
270 VeryHigh = 9, | |
271 } value; | |
272 } bContrast; | 240 } bContrast; |
273 | 241 |
274 struct Topology { | 242 enum class Topology : SK_OT_BYTE { |
275 enum Value : SK_OT_BYTE { | 243 Any = 0, |
276 Any = 0, | 244 NoFit = 1, |
277 NoFit = 1, | 245 Roman_Disconnected = 2, |
278 Roman_Disconnected = 2, | 246 Roman_Trailing = 3, |
279 Roman_Trailing = 3, | 247 Roman_Connected = 4, |
280 Roman_Connected = 4, | 248 Cursive_Disconnected = 5, |
281 Cursive_Disconnected = 5, | 249 Cursive_Trailing = 6, |
282 Cursive_Trailing = 6, | 250 Cursive_Connected = 7, |
283 Cursive_Connected = 7, | 251 Blackletter_Disconnected = 8, |
284 Blackletter_Disconnected = 8, | 252 Blackletter_Trailing = 9, |
285 Blackletter_Trailing = 9, | 253 Blackletter_Connected = 10, |
286 Blackletter_Connected = 10, | |
287 } value; | |
288 } bTopology; | 254 } bTopology; |
289 | 255 |
290 struct Form { | 256 enum class Form : SK_OT_BYTE { |
291 enum Value : SK_OT_BYTE { | 257 Any = 0, |
292 Any = 0, | 258 NoFit = 1, |
293 NoFit = 1, | 259 Upright_NoWrapping = 2, |
294 Upright_NoWrapping = 2, | 260 Upright_SomeWrapping = 3, |
295 Upright_SomeWrapping = 3, | 261 Upright_MoreWrapping = 4, |
296 Upright_MoreWrapping = 4, | 262 Upright_ExtremeWrapping = 5, |
297 Upright_ExtremeWrapping = 5, | 263 Oblique_NoWrapping = 6, |
298 Oblique_NoWrapping = 6, | 264 Oblique_SomeWrapping = 7, |
299 Oblique_SomeWrapping = 7, | 265 Oblique_MoreWrapping = 8, |
300 Oblique_MoreWrapping = 8, | 266 Oblique_ExtremeWrapping = 9, |
301 Oblique_ExtremeWrapping = 9, | 267 Exaggerated_NoWrapping = 10, |
302 Exaggerated_NoWrapping = 10, | 268 Exaggerated_SomeWrapping = 11, |
303 Exaggerated_SomeWrapping = 11, | 269 Exaggerated_MoreWrapping = 12, |
304 Exaggerated_MoreWrapping = 12, | 270 Exaggerated_ExtremeWrapping = 13, |
305 Exaggerated_ExtremeWrapping = 13, | |
306 } value; | |
307 } bForm; | 271 } bForm; |
308 | 272 |
309 struct Finials { | 273 enum class Finials : SK_OT_BYTE { |
310 enum Value : SK_OT_BYTE { | 274 Any = 0, |
311 Any = 0, | 275 NoFit = 1, |
312 NoFit = 1, | 276 None_NoLoops = 2, |
313 None_NoLoops = 2, | 277 None_ClosedLoops = 3, |
314 None_ClosedLoops = 3, | 278 None_OpenLoops = 4, |
315 None_OpenLoops = 4, | 279 Sharp_NoLoops = 5, |
316 Sharp_NoLoops = 5, | 280 Sharp_ClosedLoops = 6, |
317 Sharp_ClosedLoops = 6, | 281 Sharp_OpenLoops = 7, |
318 Sharp_OpenLoops = 7, | 282 Tapered_NoLoops = 8, |
319 Tapered_NoLoops = 8, | 283 Tapered_ClosedLoops = 9, |
320 Tapered_ClosedLoops = 9, | 284 Tapered_OpenLoops = 10, |
321 Tapered_OpenLoops = 10, | 285 Round_NoLoops = 11, |
322 Round_NoLoops = 11, | 286 Round_ClosedLoops = 12, |
323 Round_ClosedLoops = 12, | 287 Round_OpenLoops = 13, |
324 Round_OpenLoops = 13, | |
325 } value; | |
326 } bFinials; | 288 } bFinials; |
327 | 289 |
328 struct XAscent { | 290 enum class XAscent : SK_OT_BYTE { |
329 enum Value : SK_OT_BYTE { | 291 Any = 0, |
330 Any = 0, | 292 NoFit = 1, |
331 NoFit = 1, | 293 VeryLow = 2, |
332 VeryLow = 2, | 294 Low = 3, |
333 Low = 3, | 295 Medium = 4, |
334 Medium = 4, | 296 High = 5, |
335 High = 5, | 297 VeryHigh = 6, |
336 VeryHigh = 6, | |
337 } value; | |
338 } bXAscent; | 298 } bXAscent; |
339 } script; | 299 } script; |
340 | 300 |
341 struct Decorative { | 301 struct Decorative { |
342 struct Class { | 302 enum class Class : SK_OT_BYTE { |
343 enum Value : SK_OT_BYTE { | 303 Any = 0, |
344 Any = 0, | 304 NoFit = 1, |
345 NoFit = 1, | 305 Derivative = 2, |
346 Derivative = 2, | 306 NonStandard_Topology = 3, |
347 NonStandard_Topology = 3, | 307 NonStandard_Elements = 4, |
348 NonStandard_Elements = 4, | 308 NonStandard_Aspect = 5, |
349 NonStandard_Aspect = 5, | 309 Initials = 6, |
350 Initials = 6, | 310 Cartoon = 7, |
351 Cartoon = 7, | 311 PictureStems = 8, |
352 PictureStems = 8, | 312 Ornamented = 9, |
353 Ornamented = 9, | 313 TextAndBackground = 10, |
354 TextAndBackground = 10, | 314 Collage = 11, |
355 Collage = 11, | 315 Montage = 12, |
356 Montage = 12, | |
357 } value; | |
358 } bClass; | 316 } bClass; |
359 | 317 |
360 struct Weight { | 318 enum class Weight : SK_OT_BYTE { |
361 enum Value : SK_OT_BYTE { | 319 Any = 0, |
362 Any = 0, | 320 NoFit = 1, |
363 NoFit = 1, | 321 VeryLight = 2, |
364 VeryLight = 2, | 322 Light = 3, |
365 Light = 3, | 323 Thin = 4, |
366 Thin = 4, | 324 Book = 5, |
367 Book = 5, | 325 Medium = 6, |
368 Medium = 6, | 326 Demi = 7, |
369 Demi = 7, | 327 Bold = 8, |
370 Bold = 8, | 328 Heavy = 9, |
371 Heavy = 9, | 329 Black = 10, |
372 Black = 10, | 330 ExtraBlack = 11, |
373 ExtraBlack = 11, | |
374 } value; | |
375 } bWeight; | 331 } bWeight; |
376 | 332 |
377 struct Aspect { | 333 enum class Aspect : SK_OT_BYTE { |
378 enum Value : SK_OT_BYTE { | 334 Any = 0, |
379 Any = 0, | 335 NoFit = 1, |
380 NoFit = 1, | 336 SuperCondensed = 2, |
381 SuperCondensed = 2, | 337 VeryCondensed = 3, |
382 VeryCondensed = 3, | 338 Condensed = 4, |
383 Condensed = 4, | 339 Normal = 5, |
384 Normal = 5, | 340 Extended = 6, |
385 Extended = 6, | 341 VeryExtended = 7, |
386 VeryExtended = 7, | 342 SuperExtended = 8, |
387 SuperExtended = 8, | 343 Monospaced = 9, |
388 Monospaced = 9, | |
389 } value; | |
390 } bAspect; | 344 } bAspect; |
391 | 345 |
392 struct Contrast { | 346 enum class Contrast : SK_OT_BYTE { |
393 enum Value : SK_OT_BYTE { | 347 Any = 0, |
394 Any = 0, | 348 NoFit = 1, |
395 NoFit = 1, | 349 None = 2, |
396 None = 2, | 350 VeryLow = 3, |
397 VeryLow = 3, | 351 Low = 4, |
398 Low = 4, | 352 MediumLow = 5, |
399 MediumLow = 5, | 353 Medium = 6, |
400 Medium = 6, | 354 MediumHigh = 7, |
401 MediumHigh = 7, | 355 High = 8, |
402 High = 8, | 356 VeryHigh = 9, |
403 VeryHigh = 9, | 357 HorizontalLow = 10, |
404 HorizontalLow = 10, | 358 HorizontalMedium = 11, |
405 HorizontalMedium = 11, | 359 HorizontalHigh = 12, |
406 HorizontalHigh = 12, | 360 Broken = 13, |
407 Broken = 13, | |
408 } value; | |
409 } bContrast; | 361 } bContrast; |
410 | 362 |
411 struct SerifVariant { | 363 enum class SerifVariant : SK_OT_BYTE { |
412 enum Value : SK_OT_BYTE { | 364 Any = 0, |
413 Any = 0, | 365 NoFit = 1, |
414 NoFit = 1, | 366 Cove = 2, |
415 Cove = 2, | 367 ObtuseCove = 3, |
416 ObtuseCove = 3, | 368 SquareCove = 4, |
417 SquareCove = 4, | 369 ObtuseSquareCove = 5, |
418 ObtuseSquareCove = 5, | 370 Square = 6, |
419 Square = 6, | 371 Thin = 7, |
420 Thin = 7, | 372 Oval = 8, |
421 Oval = 8, | 373 Exaggerated = 9, |
422 Exaggerated = 9, | 374 Triangle = 10, |
423 Triangle = 10, | 375 NormalSans = 11, |
424 NormalSans = 11, | 376 ObtuseSans = 12, |
425 ObtuseSans = 12, | 377 PerpendicularSans = 13, |
426 PerpendicularSans = 13, | 378 Flared = 14, |
427 Flared = 14, | 379 Rounded = 15, |
428 Rounded = 15, | 380 Script = 16, |
429 Script = 16, | |
430 } value; | |
431 } bSerifVariant; | 381 } bSerifVariant; |
432 | 382 |
433 struct Treatment { | 383 enum class Treatment : SK_OT_BYTE { |
434 enum Value : SK_OT_BYTE { | 384 Any = 0, |
435 Any = 0, | 385 NoFit = 1, |
436 NoFit = 1, | 386 None_StandardSolidFill = 2, |
437 None_StandardSolidFill = 2, | 387 White_NoFill = 3, |
438 White_NoFill = 3, | 388 PatternedFill = 4, |
439 PatternedFill = 4, | 389 ComplexFill = 5, |
440 ComplexFill = 5, | 390 ShapedFill = 6, |
441 ShapedFill = 6, | 391 DrawnDistressed = 7, |
442 DrawnDistressed = 7, | |
443 } value; | |
444 } bTreatment; | 392 } bTreatment; |
445 | 393 |
446 struct Lining { | 394 enum class Lining : SK_OT_BYTE { |
447 enum Value : SK_OT_BYTE { | 395 Any = 0, |
448 Any = 0, | 396 NoFit = 1, |
449 NoFit = 1, | 397 None = 2, |
450 None = 2, | 398 Inline = 3, |
451 Inline = 3, | 399 Outline = 4, |
452 Outline = 4, | 400 Engraved = 5, |
453 Engraved = 5, | 401 Shadow = 6, |
454 Shadow = 6, | 402 Relief = 7, |
455 Relief = 7, | 403 Backdrop = 8, |
456 Backdrop = 8, | |
457 } value; | |
458 } bLining; | 404 } bLining; |
459 | 405 |
460 struct Topology { | 406 enum class Topology : SK_OT_BYTE { |
461 enum Value : SK_OT_BYTE { | 407 Any = 0, |
462 Any = 0, | 408 NoFit = 1, |
463 NoFit = 1, | 409 Standard = 2, |
464 Standard = 2, | 410 Square = 3, |
465 Square = 3, | 411 MultipleSegment = 4, |
466 MultipleSegment = 4, | 412 DecoWacoMidlines = 5, |
467 DecoWacoMidlines = 5, | 413 UnevenWeighting = 6, |
468 UnevenWeighting = 6, | 414 DiverseArms = 7, |
469 DiverseArms = 7, | 415 DiverseForms = 8, |
470 DiverseForms = 8, | 416 LombardicForms = 9, |
471 LombardicForms = 9, | 417 UpperCaseInLowerCase = 10, |
472 UpperCaseInLowerCase = 10, | 418 ImpliedTopology = 11, |
473 ImpliedTopology = 11, | 419 HorseshoeEandA = 12, |
474 HorseshoeEandA = 12, | 420 Cursive = 13, |
475 Cursive = 13, | 421 Blackletter = 14, |
476 Blackletter = 14, | 422 SwashVariance = 15, |
477 SwashVariance = 15, | |
478 } value; | |
479 } bTopology; | 423 } bTopology; |
480 | 424 |
481 struct RangeOfCharacters { | 425 enum class RangeOfCharacters : SK_OT_BYTE { |
482 enum Value : SK_OT_BYTE { | 426 Any = 0, |
483 Any = 0, | 427 NoFit = 1, |
484 NoFit = 1, | 428 ExtendedCollection = 2, |
485 ExtendedCollection = 2, | 429 Litterals = 3, |
486 Litterals = 3, | 430 NoLowerCase = 4, |
487 NoLowerCase = 4, | 431 SmallCaps = 5, |
488 SmallCaps = 5, | |
489 } value; | |
490 } bRangeOfCharacters; | 432 } bRangeOfCharacters; |
491 } decorative; | 433 } decorative; |
492 | 434 |
493 struct Pictoral { | 435 struct Pictoral { |
494 struct Kind { | 436 enum class Kind : SK_OT_BYTE { |
495 enum Value : SK_OT_BYTE { | 437 Any = 0, |
496 Any = 0, | 438 NoFit = 1, |
497 NoFit = 1, | 439 Montages = 2, |
498 Montages = 2, | 440 Pictures = 3, |
499 Pictures = 3, | 441 Shapes = 4, |
500 Shapes = 4, | 442 Scientific = 5, |
501 Scientific = 5, | 443 Music = 6, |
502 Music = 6, | 444 Expert = 7, |
503 Expert = 7, | 445 Patterns = 8, |
504 Patterns = 8, | 446 Boarders = 9, |
505 Boarders = 9, | 447 Icons = 10, |
506 Icons = 10, | 448 Logos = 11, |
507 Logos = 11, | 449 IndustrySpecific = 12, |
508 IndustrySpecific = 12, | |
509 } value; | |
510 } bKind; | 450 } bKind; |
511 | 451 |
512 struct Weight { | 452 enum class Weight : SK_OT_BYTE { |
513 enum Value : SK_OT_BYTE { | 453 NoFit = 1, |
514 NoFit = 1, | |
515 } value; | |
516 } bWeight; | 454 } bWeight; |
517 | 455 |
518 struct Spacing { | 456 enum class Spacing : SK_OT_BYTE { |
519 enum Value : SK_OT_BYTE { | 457 Any = 0, |
520 Any = 0, | 458 NoFit = 1, |
521 NoFit = 1, | 459 ProportionalSpaced = 2, |
522 ProportionalSpaced = 2, | 460 Monospaced = 3, |
523 Monospaced = 3, | |
524 } value; | |
525 } bSpacing; | 461 } bSpacing; |
526 | 462 |
527 struct AspectRatioAndContrast { | 463 enum class AspectRatioAndContrast : SK_OT_BYTE { |
528 enum Value : SK_OT_BYTE { | 464 NoFit = 1, |
529 NoFit = 1, | |
530 } value; | |
531 } bAspectRatioAndContrast; | 465 } bAspectRatioAndContrast; |
532 | 466 |
533 struct AspectRatio94 { | 467 enum class AspectRatio94 : SK_OT_BYTE { |
534 enum Value : SK_OT_BYTE { | 468 Any = 0, |
535 Any = 0, | 469 NoFit = 1, |
536 NoFit = 1, | 470 NoWidth = 2, |
537 NoWidth = 2, | 471 ExceptionallyWide = 3, |
538 ExceptionallyWide = 3, | 472 SuperWide = 4, |
539 SuperWide = 4, | 473 VeryWide = 5, |
540 VeryWide = 5, | 474 Wide = 6, |
541 Wide = 6, | 475 Normal = 7, |
542 Normal = 7, | 476 Narrow = 8, |
543 Narrow = 8, | 477 VeryNarrow = 9, |
544 VeryNarrow = 9, | |
545 } value; | |
546 } bAspectRatio94; | 478 } bAspectRatio94; |
547 | 479 |
548 struct AspectRatio119 { | 480 enum class AspectRatio119 : SK_OT_BYTE { |
549 enum Value : SK_OT_BYTE { | 481 Any = 0, |
550 Any = 0, | 482 NoFit = 1, |
551 NoFit = 1, | 483 NoWidth = 2, |
552 NoWidth = 2, | 484 ExceptionallyWide = 3, |
553 ExceptionallyWide = 3, | 485 SuperWide = 4, |
554 SuperWide = 4, | 486 VeryWide = 5, |
555 VeryWide = 5, | 487 Wide = 6, |
556 Wide = 6, | 488 Normal = 7, |
557 Normal = 7, | 489 Narrow = 8, |
558 Narrow = 8, | 490 VeryNarrow = 9, |
559 VeryNarrow = 9, | |
560 } value; | |
561 } bAspectRatio119; | 491 } bAspectRatio119; |
562 | 492 |
563 struct AspectRatio157 { | 493 enum class AspectRatio157 : SK_OT_BYTE { |
564 enum Value : SK_OT_BYTE { | 494 Any = 0, |
565 Any = 0, | 495 NoFit = 1, |
566 NoFit = 1, | 496 NoWidth = 2, |
567 NoWidth = 2, | 497 ExceptionallyWide = 3, |
568 ExceptionallyWide = 3, | 498 SuperWide = 4, |
569 SuperWide = 4, | 499 VeryWide = 5, |
570 VeryWide = 5, | 500 Wide = 6, |
571 Wide = 6, | 501 Normal = 7, |
572 Normal = 7, | 502 Narrow = 8, |
573 Narrow = 8, | 503 VeryNarrow = 9, |
574 VeryNarrow = 9, | |
575 } value; | |
576 } bAspectRatio157; | 504 } bAspectRatio157; |
577 | 505 |
578 struct AspectRatio163 { | 506 enum class AspectRatio163 : SK_OT_BYTE { |
579 enum Value : SK_OT_BYTE { | 507 Any = 0, |
580 Any = 0, | 508 NoFit = 1, |
581 NoFit = 1, | 509 NoWidth = 2, |
582 NoWidth = 2, | 510 ExceptionallyWide = 3, |
583 ExceptionallyWide = 3, | 511 SuperWide = 4, |
584 SuperWide = 4, | 512 VeryWide = 5, |
585 VeryWide = 5, | 513 Wide = 6, |
586 Wide = 6, | 514 Normal = 7, |
587 Normal = 7, | 515 Narrow = 8, |
588 Narrow = 8, | 516 VeryNarrow = 9, |
589 VeryNarrow = 9, | |
590 } value; | |
591 } bAspectRatio163; | 517 } bAspectRatio163; |
592 } pictoral; | 518 } pictoral; |
593 } data; | 519 } data; |
594 }; | 520 }; |
595 | 521 |
596 #pragma pack(pop) | 522 #pragma pack(pop) |
597 | 523 |
598 | 524 |
599 static_assert(sizeof(SkPanose) == 10, "sizeof_SkPanose_not_10"); | 525 static_assert(sizeof(SkPanose) == 10, "sizeof_SkPanose_not_10"); |
600 | 526 |
601 #endif | 527 #endif |
OLD | NEW |