• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /****************************************************************************
2  *
3  * tttags.h
4  *
5  *   Tags for TrueType and OpenType tables (specification only).
6  *
7  * Copyright (C) 1996-2023 by
8  * 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 #ifndef TTAGS_H_
20 #define TTAGS_H_
21 
22 
23 #include <freetype/freetype.h>
24 
25 #ifdef FREETYPE_H
26 #error "freetype.h of FreeType 1 has been loaded!"
27 #error "Please fix the directory search order for header files"
28 #error "so that freetype.h of FreeType 2 is found first."
29 #endif
30 
31 
32 FT_BEGIN_HEADER
33 
34 
35 #define TTAG_avar  FT_MAKE_TAG( 'a', 'v', 'a', 'r' )
36 #define TTAG_BASE  FT_MAKE_TAG( 'B', 'A', 'S', 'E' )
37 #define TTAG_bdat  FT_MAKE_TAG( 'b', 'd', 'a', 't' )
38 #define TTAG_BDF   FT_MAKE_TAG( 'B', 'D', 'F', ' ' )
39 #define TTAG_bhed  FT_MAKE_TAG( 'b', 'h', 'e', 'd' )
40 #define TTAG_bloc  FT_MAKE_TAG( 'b', 'l', 'o', 'c' )
41 #define TTAG_bsln  FT_MAKE_TAG( 'b', 's', 'l', 'n' )
42 #define TTAG_CBDT  FT_MAKE_TAG( 'C', 'B', 'D', 'T' )
43 #define TTAG_CBLC  FT_MAKE_TAG( 'C', 'B', 'L', 'C' )
44 #define TTAG_CFF   FT_MAKE_TAG( 'C', 'F', 'F', ' ' )
45 #define TTAG_CFF2  FT_MAKE_TAG( 'C', 'F', 'F', '2' )
46 #define TTAG_CID   FT_MAKE_TAG( 'C', 'I', 'D', ' ' )
47 #define TTAG_cmap  FT_MAKE_TAG( 'c', 'm', 'a', 'p' )
48 #define TTAG_COLR  FT_MAKE_TAG( 'C', 'O', 'L', 'R' )
49 #define TTAG_CPAL  FT_MAKE_TAG( 'C', 'P', 'A', 'L' )
50 #define TTAG_cvar  FT_MAKE_TAG( 'c', 'v', 'a', 'r' )
51 #define TTAG_cvt   FT_MAKE_TAG( 'c', 'v', 't', ' ' )
52 #define TTAG_DSIG  FT_MAKE_TAG( 'D', 'S', 'I', 'G' )
53 #define TTAG_EBDT  FT_MAKE_TAG( 'E', 'B', 'D', 'T' )
54 #define TTAG_EBLC  FT_MAKE_TAG( 'E', 'B', 'L', 'C' )
55 #define TTAG_EBSC  FT_MAKE_TAG( 'E', 'B', 'S', 'C' )
56 #define TTAG_feat  FT_MAKE_TAG( 'f', 'e', 'a', 't' )
57 #define TTAG_FOND  FT_MAKE_TAG( 'F', 'O', 'N', 'D' )
58 #define TTAG_fpgm  FT_MAKE_TAG( 'f', 'p', 'g', 'm' )
59 #define TTAG_fvar  FT_MAKE_TAG( 'f', 'v', 'a', 'r' )
60 #define TTAG_gasp  FT_MAKE_TAG( 'g', 'a', 's', 'p' )
61 #define TTAG_GDEF  FT_MAKE_TAG( 'G', 'D', 'E', 'F' )
62 #define TTAG_glyf  FT_MAKE_TAG( 'g', 'l', 'y', 'f' )
63 #define TTAG_GPOS  FT_MAKE_TAG( 'G', 'P', 'O', 'S' )
64 #define TTAG_GSUB  FT_MAKE_TAG( 'G', 'S', 'U', 'B' )
65 #define TTAG_gvar  FT_MAKE_TAG( 'g', 'v', 'a', 'r' )
66 #define TTAG_HVAR  FT_MAKE_TAG( 'H', 'V', 'A', 'R' )
67 #define TTAG_hdmx  FT_MAKE_TAG( 'h', 'd', 'm', 'x' )
68 #define TTAG_head  FT_MAKE_TAG( 'h', 'e', 'a', 'd' )
69 #define TTAG_hhea  FT_MAKE_TAG( 'h', 'h', 'e', 'a' )
70 #define TTAG_hmtx  FT_MAKE_TAG( 'h', 'm', 't', 'x' )
71 #define TTAG_JSTF  FT_MAKE_TAG( 'J', 'S', 'T', 'F' )
72 #define TTAG_just  FT_MAKE_TAG( 'j', 'u', 's', 't' )
73 #define TTAG_kern  FT_MAKE_TAG( 'k', 'e', 'r', 'n' )
74 #define TTAG_lcar  FT_MAKE_TAG( 'l', 'c', 'a', 'r' )
75 #define TTAG_loca  FT_MAKE_TAG( 'l', 'o', 'c', 'a' )
76 #define TTAG_LTSH  FT_MAKE_TAG( 'L', 'T', 'S', 'H' )
77 #define TTAG_LWFN  FT_MAKE_TAG( 'L', 'W', 'F', 'N' )
78 #define TTAG_MATH  FT_MAKE_TAG( 'M', 'A', 'T', 'H' )
79 #define TTAG_maxp  FT_MAKE_TAG( 'm', 'a', 'x', 'p' )
80 #define TTAG_META  FT_MAKE_TAG( 'M', 'E', 'T', 'A' )
81 #define TTAG_MMFX  FT_MAKE_TAG( 'M', 'M', 'F', 'X' )
82 #define TTAG_MMSD  FT_MAKE_TAG( 'M', 'M', 'S', 'D' )
83 #define TTAG_mort  FT_MAKE_TAG( 'm', 'o', 'r', 't' )
84 #define TTAG_morx  FT_MAKE_TAG( 'm', 'o', 'r', 'x' )
85 #define TTAG_MVAR  FT_MAKE_TAG( 'M', 'V', 'A', 'R' )
86 #define TTAG_name  FT_MAKE_TAG( 'n', 'a', 'm', 'e' )
87 #define TTAG_opbd  FT_MAKE_TAG( 'o', 'p', 'b', 'd' )
88 #define TTAG_OS2   FT_MAKE_TAG( 'O', 'S', '/', '2' )
89 #define TTAG_OTTO  FT_MAKE_TAG( 'O', 'T', 'T', 'O' )
90 #define TTAG_PCLT  FT_MAKE_TAG( 'P', 'C', 'L', 'T' )
91 #define TTAG_POST  FT_MAKE_TAG( 'P', 'O', 'S', 'T' )
92 #define TTAG_post  FT_MAKE_TAG( 'p', 'o', 's', 't' )
93 #define TTAG_prep  FT_MAKE_TAG( 'p', 'r', 'e', 'p' )
94 #define TTAG_prop  FT_MAKE_TAG( 'p', 'r', 'o', 'p' )
95 #define TTAG_sbix  FT_MAKE_TAG( 's', 'b', 'i', 'x' )
96 #define TTAG_sfnt  FT_MAKE_TAG( 's', 'f', 'n', 't' )
97 #define TTAG_SING  FT_MAKE_TAG( 'S', 'I', 'N', 'G' )
98 #define TTAG_SVG   FT_MAKE_TAG( 'S', 'V', 'G', ' ' )
99 #define TTAG_trak  FT_MAKE_TAG( 't', 'r', 'a', 'k' )
100 #define TTAG_true  FT_MAKE_TAG( 't', 'r', 'u', 'e' )
101 #define TTAG_ttc   FT_MAKE_TAG( 't', 't', 'c', ' ' )
102 #define TTAG_ttcf  FT_MAKE_TAG( 't', 't', 'c', 'f' )
103 #define TTAG_TYP1  FT_MAKE_TAG( 'T', 'Y', 'P', '1' )
104 #define TTAG_typ1  FT_MAKE_TAG( 't', 'y', 'p', '1' )
105 #define TTAG_VDMX  FT_MAKE_TAG( 'V', 'D', 'M', 'X' )
106 #define TTAG_vhea  FT_MAKE_TAG( 'v', 'h', 'e', 'a' )
107 #define TTAG_vmtx  FT_MAKE_TAG( 'v', 'm', 't', 'x' )
108 #define TTAG_VVAR  FT_MAKE_TAG( 'V', 'V', 'A', 'R' )
109 #define TTAG_wOFF  FT_MAKE_TAG( 'w', 'O', 'F', 'F' )
110 #define TTAG_wOF2  FT_MAKE_TAG( 'w', 'O', 'F', '2' )
111 
112 /* used by "Keyboard.dfont" on legacy Mac OS X */
113 #define TTAG_0xA5kbd  FT_MAKE_TAG( 0xA5, 'k', 'b', 'd' )
114 
115 /* used by "LastResort.dfont" on legacy Mac OS X */
116 #define TTAG_0xA5lst  FT_MAKE_TAG( 0xA5, 'l', 's', 't' )
117 
118 
119 FT_END_HEADER
120 
121 #endif /* TTAGS_H_ */
122 
123 
124 /* END */
125