ReactOS  0.4.15-dev-1150-g593bcce
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 2007-2018 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 
26  FT_UInt ppem )
27  {
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  {
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_UShort numRanges
Definition: tttypes.h:413
FT_Get_Gasp(FT_Face face, FT_UInt ppem)
Definition: ftgasp.c:25
signed int FT_Int
Definition: fttypes.h:220
TT_GaspRange gaspRanges
Definition: tttypes.h:414
#define FT_GASP_NO_TABLE
Definition: ftgasp.h:92
struct TT_FaceRec_ * TT_Face
Definition: tttypes.h:973
static void Exit(void)
Definition: sock.c:1331
#define FT_IS_SFNT(face)
Definition: freetype.h:1331
GLenum GLint * range
Definition: glext.h:7539
#define FT_EXPORT_DEF(x)
Definition: ftconfig.h:483
unsigned int FT_UInt
Definition: fttypes.h:231
FT_UShort version
Definition: tttypes.h:412
GLuint64EXT * result
Definition: glext.h:11304
TT_GaspRec gasp
Definition: tttypes.h:1455
GLenum GLuint GLint GLenum face
Definition: glext.h:7025