sdk-world
v2026.11.05
PS2 SDK - world tier (copyleft-allowed, non-essential packages)
Toggle main menu visibility
Loading...
Searching...
No Matches
woff2tags.c
1
/****************************************************************************
2
*
3
* woff2tags.c
4
*
5
* WOFF2 Font table tags (base).
6
*
7
* Copyright (C) 2019-2025 by
8
* Nikhil Ramakrishnan, David Turner, Robert Wilhelm, and Werner Lemberg.
9
*
10
* This file is part of the FreeType project, and may only be used,
11
* modified, and distributed under the terms of the FreeType project
12
* license, LICENSE.TXT. By continuing to use, modify, or distribute
13
* this file you indicate that you have read the license and
14
* understand and accept it fully.
15
*
16
*/
17
18
19
#include <
freetype/tttags.h
>
20
21
#ifdef FT_CONFIG_OPTION_USE_BROTLI
22
23
#include "
woff2tags.h
"
24
25
/*
26
* Return tag from index in the order given in WOFF2 specification.
27
*
28
* See
29
*
30
* https://www.w3.org/TR/WOFF2/#table_dir_format
31
*
32
* for details.
33
*/
34
FT_LOCAL_DEF( FT_Tag )
35
woff2_known_tags( FT_Byte index )
36
{
37
static
const
FT_Tag known_tags[63] =
38
{
39
FT_MAKE_TAG(
'c'
,
'm'
,
'a'
,
'p'
),
/* 0 */
40
FT_MAKE_TAG(
'h'
,
'e'
,
'a'
,
'd'
),
/* 1 */
41
FT_MAKE_TAG(
'h'
,
'h'
,
'e'
,
'a'
),
/* 2 */
42
FT_MAKE_TAG(
'h'
,
'm'
,
't'
,
'x'
),
/* 3 */
43
FT_MAKE_TAG(
'm'
,
'a'
,
'x'
,
'p'
),
/* 4 */
44
FT_MAKE_TAG(
'n'
,
'a'
,
'm'
,
'e'
),
/* 5 */
45
FT_MAKE_TAG(
'O'
,
'S'
,
'/'
,
'2'
),
/* 6 */
46
FT_MAKE_TAG(
'p'
,
'o'
,
's'
,
't'
),
/* 7 */
47
FT_MAKE_TAG(
'c'
,
'v'
,
't'
,
' '
),
/* 8 */
48
FT_MAKE_TAG(
'f'
,
'p'
,
'g'
,
'm'
),
/* 9 */
49
FT_MAKE_TAG(
'g'
,
'l'
,
'y'
,
'f'
),
/* 10 */
50
FT_MAKE_TAG(
'l'
,
'o'
,
'c'
,
'a'
),
/* 11 */
51
FT_MAKE_TAG(
'p'
,
'r'
,
'e'
,
'p'
),
/* 12 */
52
FT_MAKE_TAG(
'C'
,
'F'
,
'F'
,
' '
),
/* 13 */
53
FT_MAKE_TAG(
'V'
,
'O'
,
'R'
,
'G'
),
/* 14 */
54
FT_MAKE_TAG(
'E'
,
'B'
,
'D'
,
'T'
),
/* 15 */
55
FT_MAKE_TAG(
'E'
,
'B'
,
'L'
,
'C'
),
/* 16 */
56
FT_MAKE_TAG(
'g'
,
'a'
,
's'
,
'p'
),
/* 17 */
57
FT_MAKE_TAG(
'h'
,
'd'
,
'm'
,
'x'
),
/* 18 */
58
FT_MAKE_TAG(
'k'
,
'e'
,
'r'
,
'n'
),
/* 19 */
59
FT_MAKE_TAG(
'L'
,
'T'
,
'S'
,
'H'
),
/* 20 */
60
FT_MAKE_TAG(
'P'
,
'C'
,
'L'
,
'T'
),
/* 21 */
61
FT_MAKE_TAG(
'V'
,
'D'
,
'M'
,
'X'
),
/* 22 */
62
FT_MAKE_TAG(
'v'
,
'h'
,
'e'
,
'a'
),
/* 23 */
63
FT_MAKE_TAG(
'v'
,
'm'
,
't'
,
'x'
),
/* 24 */
64
FT_MAKE_TAG(
'B'
,
'A'
,
'S'
,
'E'
),
/* 25 */
65
FT_MAKE_TAG(
'G'
,
'D'
,
'E'
,
'F'
),
/* 26 */
66
FT_MAKE_TAG(
'G'
,
'P'
,
'O'
,
'S'
),
/* 27 */
67
FT_MAKE_TAG(
'G'
,
'S'
,
'U'
,
'B'
),
/* 28 */
68
FT_MAKE_TAG(
'E'
,
'B'
,
'S'
,
'C'
),
/* 29 */
69
FT_MAKE_TAG(
'J'
,
'S'
,
'T'
,
'F'
),
/* 30 */
70
FT_MAKE_TAG(
'M'
,
'A'
,
'T'
,
'H'
),
/* 31 */
71
FT_MAKE_TAG(
'C'
,
'B'
,
'D'
,
'T'
),
/* 32 */
72
FT_MAKE_TAG(
'C'
,
'B'
,
'L'
,
'C'
),
/* 33 */
73
FT_MAKE_TAG(
'C'
,
'O'
,
'L'
,
'R'
),
/* 34 */
74
FT_MAKE_TAG(
'C'
,
'P'
,
'A'
,
'L'
),
/* 35 */
75
FT_MAKE_TAG(
'S'
,
'V'
,
'G'
,
' '
),
/* 36 */
76
FT_MAKE_TAG(
's'
,
'b'
,
'i'
,
'x'
),
/* 37 */
77
FT_MAKE_TAG(
'a'
,
'c'
,
'n'
,
't'
),
/* 38 */
78
FT_MAKE_TAG(
'a'
,
'v'
,
'a'
,
'r'
),
/* 39 */
79
FT_MAKE_TAG(
'b'
,
'd'
,
'a'
,
't'
),
/* 40 */
80
FT_MAKE_TAG(
'b'
,
'l'
,
'o'
,
'c'
),
/* 41 */
81
FT_MAKE_TAG(
'b'
,
's'
,
'l'
,
'n'
),
/* 42 */
82
FT_MAKE_TAG(
'c'
,
'v'
,
'a'
,
'r'
),
/* 43 */
83
FT_MAKE_TAG(
'f'
,
'd'
,
's'
,
'c'
),
/* 44 */
84
FT_MAKE_TAG(
'f'
,
'e'
,
'a'
,
't'
),
/* 45 */
85
FT_MAKE_TAG(
'f'
,
'm'
,
't'
,
'x'
),
/* 46 */
86
FT_MAKE_TAG(
'f'
,
'v'
,
'a'
,
'r'
),
/* 47 */
87
FT_MAKE_TAG(
'g'
,
'v'
,
'a'
,
'r'
),
/* 48 */
88
FT_MAKE_TAG(
'h'
,
's'
,
't'
,
'y'
),
/* 49 */
89
FT_MAKE_TAG(
'j'
,
'u'
,
's'
,
't'
),
/* 50 */
90
FT_MAKE_TAG(
'l'
,
'c'
,
'a'
,
'r'
),
/* 51 */
91
FT_MAKE_TAG(
'm'
,
'o'
,
'r'
,
't'
),
/* 52 */
92
FT_MAKE_TAG(
'm'
,
'o'
,
'r'
,
'x'
),
/* 53 */
93
FT_MAKE_TAG(
'o'
,
'p'
,
'b'
,
'd'
),
/* 54 */
94
FT_MAKE_TAG(
'p'
,
'r'
,
'o'
,
'p'
),
/* 55 */
95
FT_MAKE_TAG(
't'
,
'r'
,
'a'
,
'k'
),
/* 56 */
96
FT_MAKE_TAG(
'Z'
,
'a'
,
'p'
,
'f'
),
/* 57 */
97
FT_MAKE_TAG(
'S'
,
'i'
,
'l'
,
'f'
),
/* 58 */
98
FT_MAKE_TAG(
'G'
,
'l'
,
'a'
,
't'
),
/* 59 */
99
FT_MAKE_TAG(
'G'
,
'l'
,
'o'
,
'c'
),
/* 60 */
100
FT_MAKE_TAG(
'F'
,
'e'
,
'a'
,
't'
),
/* 61 */
101
FT_MAKE_TAG(
'S'
,
'i'
,
'l'
,
'l'
),
/* 62 */
102
};
103
104
105
if
( index > 62 )
106
return
0;
107
108
return
known_tags[index];
109
}
110
111
#else
/* !FT_CONFIG_OPTION_USE_BROTLI */
112
113
/* ANSI C doesn't like empty source files */
114
typedef
int
woff2tags_dummy_;
115
116
#endif
/* !FT_CONFIG_OPTION_USE_BROTLI */
117
118
119
/* END */
tttags.h
woff2tags.h
freetype
src
sfnt
woff2tags.c
Generated by
1.18.0