ReactOS
0.4.16-dev-1528-g28b3562
ftgasp.c
Go to the documentation of this file.
1
/****************************************************************************
2
*
3
* ftgasp.c
4
*
5
* Access of TrueType's `gasp' table (body).
6
*
7
* Copyright (C) 2007-2019 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
#include <
ft2build.h
>
20
#include FT_GASP_H
21
#include FT_INTERNAL_TRUETYPE_TYPES_H
22
23
24
FT_EXPORT_DEF
(
FT_Int
)
25
FT_Get_Gasp
(
FT_Face
face
,
26
FT_UInt
ppem )
27
{
28
FT_Int
result
=
FT_GASP_NO_TABLE
;
29
30
31
if
(
face
&&
FT_IS_SFNT
(
face
) )
32
{
33
TT_Face
ttface = (
TT_Face
)
face
;
34
35
36
if
( ttface->
gasp
.
numRanges
> 0 )
37
{
38
TT_GaspRange
range
= ttface->
gasp
.
gaspRanges
;
39
TT_GaspRange
range_end =
range
+ ttface->
gasp
.
numRanges
;
40
41
42
while
( ppem >
range
->maxPPEM )
43
{
44
range
++;
45
if
(
range
>= range_end )
46
goto
Exit
;
47
}
48
49
result
=
range
->gaspFlag;
50
51
/* ensure that we don't have spurious bits */
52
if
( ttface->
gasp
.
version
== 0 )
53
result
&= 3;
54
}
55
}
56
Exit
:
57
return
result
;
58
}
59
60
61
/* END */
FT_IS_SFNT
#define FT_IS_SFNT(face)
Definition:
freetype.h:1303
ft2build.h
FT_EXPORT_DEF
#define FT_EXPORT_DEF(x)
Definition:
ftconfig.h:494
FT_Get_Gasp
FT_Get_Gasp(FT_Face face, FT_UInt ppem)
Definition:
ftgasp.c:25
FT_GASP_NO_TABLE
#define FT_GASP_NO_TABLE
Definition:
ftgasp.h:95
FT_UInt
unsigned int FT_UInt
Definition:
fttypes.h:231
FT_Int
signed int FT_Int
Definition:
fttypes.h:220
face
GLenum GLuint GLint GLenum face
Definition:
glext.h:7025
range
GLenum GLint * range
Definition:
glext.h:7539
result
GLuint64EXT * result
Definition:
glext.h:11304
Exit
static void Exit(void)
Definition:
sock.c:1330
FT_FaceRec_
Definition:
freetype.h:1042
TT_FaceRec_
Definition:
tttypes.h:1537
TT_FaceRec_::gasp
TT_GaspRec gasp
Definition:
tttypes.h:1600
TT_GaspRangeRec_
Definition:
tttypes.h:421
TT_Gasp_::version
FT_UShort version
Definition:
tttypes.h:453
TT_Gasp_::numRanges
FT_UShort numRanges
Definition:
tttypes.h:454
TT_Gasp_::gaspRanges
TT_GaspRange gaspRanges
Definition:
tttypes.h:455
TT_Face
struct TT_FaceRec_ * TT_Face
Definition:
tttypes.h:1064
sdk
lib
3rdparty
freetype
src
base
ftgasp.c
Generated on Sat Jul 19 2025 06:13:56 for ReactOS by
1.9.6