ReactOS  0.4.13-dev-982-g9853eab
tttables.h File Reference
#include <ft2build.h>
Include dependency graph for tttables.h:

Go to the source code of this file.

Classes

struct  TT_Header_
 
struct  TT_HoriHeader_
 
struct  TT_VertHeader_
 
struct  TT_OS2_
 
struct  TT_Postscript_
 
struct  TT_PCLT_
 
struct  TT_MaxProfile_
 

Macros

#define ft_sfnt_head   FT_SFNT_HEAD
 
#define ft_sfnt_maxp   FT_SFNT_MAXP
 
#define ft_sfnt_os2   FT_SFNT_OS2
 
#define ft_sfnt_hhea   FT_SFNT_HHEA
 
#define ft_sfnt_vhea   FT_SFNT_VHEA
 
#define ft_sfnt_post   FT_SFNT_POST
 
#define ft_sfnt_pclt   FT_SFNT_PCLT
 

Typedefs

typedef FT_BEGIN_HEADER struct TT_Header_ TT_Header
 
typedef struct TT_HoriHeader_ TT_HoriHeader
 
typedef struct TT_VertHeader_ TT_VertHeader
 
typedef struct TT_OS2_ TT_OS2
 
typedef struct TT_Postscript_ TT_Postscript
 
typedef struct TT_PCLT_ TT_PCLT
 
typedef struct TT_MaxProfile_ TT_MaxProfile
 
typedef enum FT_Sfnt_Tag_ FT_Sfnt_Tag
 

Enumerations

enum  FT_Sfnt_Tag_ {
  FT_SFNT_HEAD, FT_SFNT_MAXP, FT_SFNT_OS2, FT_SFNT_HHEA,
  FT_SFNT_VHEA, FT_SFNT_POST, FT_SFNT_PCLT, FT_SFNT_MAX
}
 

Functions

 FT_Get_Sfnt_Table (FT_Face face, FT_Sfnt_Tag tag)
 
 FT_Load_Sfnt_Table (FT_Face face, FT_ULong tag, FT_Long offset, FT_Byte *buffer, FT_ULong *length)
 
 FT_Sfnt_Table_Info (FT_Face face, FT_UInt table_index, FT_ULong *tag, FT_ULong *length)
 
 FT_Get_CMap_Language_ID (FT_CharMap charmap)
 
 FT_Get_CMap_Format (FT_CharMap charmap)
 

Macro Definition Documentation

◆ ft_sfnt_head

#define ft_sfnt_head   FT_SFNT_HEAD

Definition at line 629 of file tttables.h.

◆ ft_sfnt_hhea

#define ft_sfnt_hhea   FT_SFNT_HHEA

Definition at line 632 of file tttables.h.

◆ ft_sfnt_maxp

#define ft_sfnt_maxp   FT_SFNT_MAXP

Definition at line 630 of file tttables.h.

◆ ft_sfnt_os2

#define ft_sfnt_os2   FT_SFNT_OS2

Definition at line 631 of file tttables.h.

◆ ft_sfnt_pclt

#define ft_sfnt_pclt   FT_SFNT_PCLT

Definition at line 635 of file tttables.h.

◆ ft_sfnt_post

#define ft_sfnt_post   FT_SFNT_POST

Definition at line 634 of file tttables.h.

◆ ft_sfnt_vhea

#define ft_sfnt_vhea   FT_SFNT_VHEA

Definition at line 633 of file tttables.h.

Typedef Documentation

◆ FT_Sfnt_Tag

◆ TT_Header

◆ TT_HoriHeader

◆ TT_MaxProfile

◆ TT_OS2

◆ TT_PCLT

◆ TT_Postscript

◆ TT_VertHeader

Enumeration Type Documentation

◆ FT_Sfnt_Tag_

Enumerator
FT_SFNT_HEAD 
FT_SFNT_MAXP 
FT_SFNT_OS2 
FT_SFNT_HHEA 
FT_SFNT_VHEA 
FT_SFNT_POST 
FT_SFNT_PCLT 
FT_SFNT_MAX 

Definition at line 613 of file tttables.h.

614  {
615  FT_SFNT_HEAD,
616  FT_SFNT_MAXP,
617  FT_SFNT_OS2,
618  FT_SFNT_HHEA,
619  FT_SFNT_VHEA,
620  FT_SFNT_POST,
621  FT_SFNT_PCLT,
622 
624 
625  } FT_Sfnt_Tag;
enum FT_Sfnt_Tag_ FT_Sfnt_Tag

Function Documentation

◆ FT_Get_CMap_Format()

FT_Get_CMap_Format ( FT_CharMap  charmap)

Definition at line 4206 of file ftobjs.c.

4207  {
4208  FT_Service_TTCMaps service;
4209  FT_Face face;
4211 
4212 
4213  if ( !charmap || !charmap->face )
4214  return -1;
4215 
4216  face = charmap->face;
4217  FT_FACE_FIND_SERVICE( face, service, TT_CMAP );
4218  if ( !service )
4219  return -1;
4220  if ( service->get_cmap_info( charmap, &cmap_info ))
4221  return -1;
4222 
4223  return cmap_info.format;
4224  }
FT_Face face
Definition: freetype.h:842
WORD face[3]
Definition: mesh.c:4747
TT_CMapInfo * cmap_info
Definition: cffdrivr.c:649
FT_Long format
Definition: svttcmap.h:61
#define FT_FACE_FIND_SERVICE(face, ptr, id)
Definition: ftserv.h:75
GLenum GLuint GLint GLenum face
Definition: glext.h:7025

Referenced by find_variant_selector_charmap(), and FT_Set_Charmap().

◆ FT_Get_CMap_Language_ID()

FT_Get_CMap_Language_ID ( FT_CharMap  charmap)

Definition at line 4182 of file ftobjs.c.

4183  {
4184  FT_Service_TTCMaps service;
4185  FT_Face face;
4187 
4188 
4189  if ( !charmap || !charmap->face )
4190  return 0;
4191 
4192  face = charmap->face;
4193  FT_FACE_FIND_SERVICE( face, service, TT_CMAP );
4194  if ( !service )
4195  return 0;
4196  if ( service->get_cmap_info( charmap, &cmap_info ))
4197  return 0;
4198 
4199  return cmap_info.language;
4200  }
FT_Face face
Definition: freetype.h:842
WORD face[3]
Definition: mesh.c:4747
TT_CMapInfo * cmap_info
Definition: cffdrivr.c:649
FT_ULong language
Definition: svttcmap.h:60
#define FT_FACE_FIND_SERVICE(face, ptr, id)
Definition: ftserv.h:75
GLenum GLuint GLint GLenum face
Definition: glext.h:7025

◆ FT_Get_Sfnt_Table()

FT_Get_Sfnt_Table ( FT_Face  face,
FT_Sfnt_Tag  tag 
)

Definition at line 4113 of file ftobjs.c.

4115  {
4116  void* table = NULL;
4117  FT_Service_SFNT_Table service;
4118 
4119 
4120  if ( face && FT_IS_SFNT( face ) )
4121  {
4122  FT_FACE_FIND_SERVICE( face, service, SFNT_TABLE );
4123  if ( service )
4124  table = service->get_table( face, tag );
4125  }
4126 
4127  return table;
4128  }
Definition: ecma_167.h:138
GLenum GLsizei GLenum GLenum const GLvoid * table
Definition: glext.h:5644
smooth NULL
Definition: ftsmooth.c:416
#define FT_IS_SFNT(face)
Definition: freetype.h:1331
#define FT_FACE_FIND_SERVICE(face, ptr, id)
Definition: ftserv.h:75
GLenum GLuint GLint GLenum face
Definition: glext.h:7025

Referenced by FontFamilyFillInfo(), FT_Get_FSType_Flags(), ftGdiGetTextCharsetInfo(), ftGdiGetTextMetricsW(), IntFontType(), IntGdiLoadFontsFromMemory(), IntGetOutlineTextMetrics(), IntRequestFontSize(), IntWidthMatrix(), and NtGdiGetGlyphIndicesW().

◆ FT_Load_Sfnt_Table()

FT_Load_Sfnt_Table ( FT_Face  face,
FT_ULong  tag,
FT_Long  offset,
FT_Byte buffer,
FT_ULong length 
)

Definition at line 4134 of file ftobjs.c.

4139  {
4140  FT_Service_SFNT_Table service;
4141 
4142 
4143  if ( !face || !FT_IS_SFNT( face ) )
4144  return FT_THROW( Invalid_Face_Handle );
4145 
4146  FT_FACE_FIND_SERVICE( face, service, SFNT_TABLE );
4147  if ( !service )
4148  return FT_THROW( Unimplemented_Feature );
4149 
4150  return service->load_table( face, tag, offset, buffer, length );
4151  }
GLintptr offset
Definition: glext.h:5920
Definition: ecma_167.h:138
GLuint buffer
Definition: glext.h:5915
#define FT_THROW(e)
Definition: ftdebug.h:213
GLenum GLuint GLenum GLsizei length
Definition: glext.h:5579
#define FT_IS_SFNT(face)
Definition: freetype.h:1331
#define FT_FACE_FIND_SERVICE(face, ptr, id)
Definition: ftserv.h:75
GLenum GLuint GLint GLenum face
Definition: glext.h:7025

Referenced by ftGdiGetFontData(), gxv_load_table(), IntFontType(), and otv_load_table().

◆ FT_Sfnt_Table_Info()

FT_Sfnt_Table_Info ( FT_Face  face,
FT_UInt  table_index,
FT_ULong tag,
FT_ULong length 
)

Definition at line 4157 of file ftobjs.c.

4161  {
4162  FT_Service_SFNT_Table service;
4163  FT_ULong offset;
4164 
4165 
4166  /* test for valid `length' delayed to `service->table_info' */
4167 
4168  if ( !face || !FT_IS_SFNT( face ) )
4169  return FT_THROW( Invalid_Face_Handle );
4170 
4171  FT_FACE_FIND_SERVICE( face, service, SFNT_TABLE );
4172  if ( !service )
4173  return FT_THROW( Unimplemented_Feature );
4174 
4175  return service->table_info( face, table_index, tag, &offset, length );
4176  }
unsigned long FT_ULong
Definition: fttypes.h:253
GLintptr offset
Definition: glext.h:5920
Definition: ecma_167.h:138
#define FT_THROW(e)
Definition: ftdebug.h:213
GLenum GLuint GLenum GLsizei length
Definition: glext.h:5579
#define FT_IS_SFNT(face)
Definition: freetype.h:1331
#define FT_FACE_FIND_SERVICE(face, ptr, id)
Definition: ftserv.h:75
GLenum GLuint GLint GLenum face
Definition: glext.h:7025