ReactOS
0.4.16-dev-2332-g4cba65d
sfwoff2.h
Go to the documentation of this file.
1
/****************************************************************************
2
*
3
* sfwoff2.h
4
*
5
* WOFFF2 format management (specification).
6
*
7
* Copyright (C) 2019-2020 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
#ifndef SFWOFF2_H_
20
#define SFWOFF2_H_
21
22
23
#include <
freetype/internal/sfnt.h
>
24
#include <
freetype/internal/ftobjs.h
>
25
26
27
FT_BEGIN_HEADER
28
29
30
/* Leave the first byte open to store `flag_byte'. */
31
#define WOFF2_FLAGS_TRANSFORM 1 << 8
32
33
#define WOFF2_SFNT_HEADER_SIZE 12
34
#define WOFF2_SFNT_ENTRY_SIZE 16
35
36
/* Suggested maximum size for output. */
37
#define WOFF2_DEFAULT_MAX_SIZE 30 * 1024 * 1024
38
39
/* 98% of Google Fonts have no glyph above 5k bytes. */
40
#define WOFF2_DEFAULT_GLYPH_BUF 5120
41
42
/* Composite glyph flags. */
43
/* See `CompositeGlyph.java' in `sfntly' for full definitions. */
44
#define FLAG_ARG_1_AND_2_ARE_WORDS 1 << 0
45
#define FLAG_WE_HAVE_A_SCALE 1 << 3
46
#define FLAG_MORE_COMPONENTS 1 << 5
47
#define FLAG_WE_HAVE_AN_X_AND_Y_SCALE 1 << 6
48
#define FLAG_WE_HAVE_A_TWO_BY_TWO 1 << 7
49
#define FLAG_WE_HAVE_INSTRUCTIONS 1 << 8
50
51
/* Simple glyph flags */
52
#define GLYF_ON_CURVE 1 << 0
53
#define GLYF_X_SHORT 1 << 1
54
#define GLYF_Y_SHORT 1 << 2
55
#define GLYF_REPEAT 1 << 3
56
#define GLYF_THIS_X_IS_SAME 1 << 4
57
#define GLYF_THIS_Y_IS_SAME 1 << 5
58
59
/* Other constants */
60
#define CONTOUR_OFFSET_END_POINT 10
61
62
63
FT_LOCAL
(
FT_Error
)
64
woff2_open_font
(
FT_Stream
stream
,
65
TT_Face
face
,
66
FT_Int
* face_index,
67
FT_Long
* num_faces );
68
69
70
FT_END_HEADER
71
72
#endif
/* SFWOFF2_H_ */
73
74
75
/* END */
FT_LOCAL
#define FT_LOCAL(x)
Definition:
compiler-macros.h:186
FT_END_HEADER
#define FT_END_HEADER
Definition:
ftheader.h:57
FT_BEGIN_HEADER
#define FT_BEGIN_HEADER
Definition:
ftheader.h:37
ftobjs.h
FT_Error
int FT_Error
Definition:
fttypes.h:299
FT_Long
signed long FT_Long
Definition:
fttypes.h:242
FT_Int
signed int FT_Int
Definition:
fttypes.h:220
face
GLenum GLuint GLint GLenum face
Definition:
glext.h:7025
sfnt.h
woff2_open_font
woff2_open_font(FT_Stream stream, TT_Face face, FT_Int *face_index, FT_Long *num_faces)
Definition:
sfwoff2.c:1750
FT_StreamRec_
Definition:
ftsystem.h:328
TT_FaceRec_
Definition:
tttypes.h:1463
stream
Definition:
parse.h:23
sdk
lib
3rdparty
freetype
src
sfnt
sfwoff2.h
Generated on Fri Mar 6 2026 06:15:06 for ReactOS by
1.9.6