w32tex
About: TeX Live provides a comprehensive TeX system including all the major TeX-related programs, macro packages, and fonts that are free software. Windows sources.
  Fossies Dox: w32tex-src.tar.xz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

tttypes.h File Reference
#include <freetype/tttables.h>
#include <freetype/internal/ftobjs.h>
#include <freetype/ftcolor.h>
Include dependency graph for tttypes.h:

Go to the source code of this file.

Classes

struct  TTC_HeaderRec_
 
struct  SFNT_HeaderRec_
 
struct  TT_TableRec_
 
struct  TT_LongMetricsRec_
 
struct  TT_NameRec_
 
struct  TT_LangTagRec_
 
struct  TT_NameTableRec_
 
struct  TT_GaspRangeRec_
 
struct  TT_Gasp_
 
struct  TT_SBit_MetricsRec_
 
struct  TT_SBit_Small_Metrics_
 
struct  TT_SBit_LineMetricsRec_
 
struct  TT_SBit_RangeRec_
 
struct  TT_SBit_StrikeRec_
 
struct  TT_SBit_ComponentRec_
 
struct  TT_SBit_ScaleRec_
 
struct  TT_Post_20Rec_
 
struct  TT_Post_25_
 
struct  TT_Post_NamesRec_
 
struct  TT_FaceRec_
 
struct  TT_GlyphZoneRec_
 
struct  TT_LoaderRec_
 

Macros

#define TT_GASP_GRIDFIT   0x01
 
#define TT_GASP_DOGRAY   0x02
 
#define TT_FACE_FLAG_VAR_FVAR   ( 1 << 0 )
 
#define TT_FACE_FLAG_VAR_HADVANCE   ( 1 << 1 )
 
#define TT_FACE_FLAG_VAR_LSB   ( 1 << 2 )
 
#define TT_FACE_FLAG_VAR_RSB   ( 1 << 3 )
 
#define TT_FACE_FLAG_VAR_VADVANCE   ( 1 << 4 )
 
#define TT_FACE_FLAG_VAR_TSB   ( 1 << 5 )
 
#define TT_FACE_FLAG_VAR_BSB   ( 1 << 6 )
 
#define TT_FACE_FLAG_VAR_VORG   ( 1 << 7 )
 
#define TT_FACE_FLAG_VAR_MVAR   ( 1 << 8 )
 

Typedefs

typedef struct TTC_HeaderRec_ TTC_HeaderRec
 
typedef struct SFNT_HeaderRec_ SFNT_HeaderRec
 
typedef struct SFNT_HeaderRec_SFNT_Header
 
typedef struct TT_TableRec_ TT_TableRec
 
typedef struct TT_TableRec_TT_Table
 
typedef struct TT_LongMetricsRec_ TT_LongMetricsRec
 
typedef struct TT_LongMetricsRec_TT_LongMetrics
 
typedef FT_Short TT_ShortMetrics
 
typedef struct TT_NameRec_ TT_NameRec
 
typedef struct TT_NameRec_TT_Name
 
typedef struct TT_LangTagRec_ TT_LangTagRec
 
typedef struct TT_LangTagRec_TT_LangTag
 
typedef struct TT_NameTableRec_ TT_NameTableRec
 
typedef struct TT_NameTableRec_TT_NameTable
 
typedef struct TT_GaspRangeRec_ TT_GaspRangeRec
 
typedef struct TT_GaspRangeRec_TT_GaspRange
 
typedef struct TT_Gasp_ TT_GaspRec
 
typedef struct TT_SBit_MetricsRec_ TT_SBit_MetricsRec
 
typedef struct TT_SBit_MetricsRec_TT_SBit_Metrics
 
typedef struct TT_SBit_Small_Metrics_ TT_SBit_SmallMetricsRec
 
typedef struct TT_SBit_Small_Metrics_TT_SBit_SmallMetrics
 
typedef struct TT_SBit_LineMetricsRec_ TT_SBit_LineMetricsRec
 
typedef struct TT_SBit_LineMetricsRec_TT_SBit_LineMetrics
 
typedef struct TT_SBit_RangeRec_ TT_SBit_RangeRec
 
typedef struct TT_SBit_RangeRec_TT_SBit_Range
 
typedef struct TT_SBit_StrikeRec_ TT_SBit_StrikeRec
 
typedef struct TT_SBit_StrikeRec_TT_SBit_Strike
 
typedef struct TT_SBit_ComponentRec_ TT_SBit_ComponentRec
 
typedef struct TT_SBit_ComponentRec_TT_SBit_Component
 
typedef struct TT_SBit_ScaleRec_ TT_SBit_ScaleRec
 
typedef struct TT_SBit_ScaleRec_TT_SBit_Scale
 
typedef struct TT_Post_20Rec_ TT_Post_20Rec
 
typedef struct TT_Post_20Rec_TT_Post_20
 
typedef struct TT_Post_25_ TT_Post_25Rec
 
typedef struct TT_Post_25_TT_Post_25
 
typedef struct TT_Post_NamesRec_ TT_Post_NamesRec
 
typedef struct TT_Post_NamesRec_TT_Post_Names
 
typedef struct TT_FaceRec_TT_Face
 
typedef FT_Error(* TT_Interpreter) (void *exec_context)
 
typedef struct TT_LoaderRec_TT_Loader
 
typedef FT_Error(* TT_Loader_GotoTableFunc) (TT_Face face, FT_ULong tag, FT_Stream stream, FT_ULong *length)
 
typedef FT_Error(* TT_Loader_StartGlyphFunc) (TT_Loader loader, FT_UInt glyph_index, FT_ULong offset, FT_UInt byte_count)
 
typedef FT_Error(* TT_Loader_ReadGlyphFunc) (TT_Loader loader)
 
typedef void(* TT_Loader_EndGlyphFunc) (TT_Loader loader)
 
typedef enum TT_SbitTableType_ TT_SbitTableType
 
typedef struct TT_FaceRec_ TT_FaceRec
 
typedef struct TT_GlyphZoneRec_ TT_GlyphZoneRec
 
typedef struct TT_GlyphZoneRec_TT_GlyphZone
 
typedef struct TT_ExecContextRec_TT_ExecContext
 
typedef struct TT_SizeRec_TT_Size
 
typedef struct TT_LoaderRec_ TT_LoaderRec
 

Enumerations

enum  TT_SbitTableType_ {
  TT_SBIT_TABLE_TYPE_NONE = 0 , TT_SBIT_TABLE_TYPE_EBLC , TT_SBIT_TABLE_TYPE_CBLC , TT_SBIT_TABLE_TYPE_SBIX ,
  TT_SBIT_TABLE_TYPE_MAX , TT_SBIT_TABLE_TYPE_NONE = 0 , TT_SBIT_TABLE_TYPE_EBLC , TT_SBIT_TABLE_TYPE_CBLC ,
  TT_SBIT_TABLE_TYPE_SBIX , TT_SBIT_TABLE_TYPE_MAX
}
 

Macro Definition Documentation

◆ TT_FACE_FLAG_VAR_BSB

#define TT_FACE_FLAG_VAR_BSB   ( 1 << 6 )

Definition at line 1142 of file tttypes.h.

◆ TT_FACE_FLAG_VAR_FVAR

#define TT_FACE_FLAG_VAR_FVAR   ( 1 << 0 )

Definition at line 1132 of file tttypes.h.

◆ TT_FACE_FLAG_VAR_HADVANCE

#define TT_FACE_FLAG_VAR_HADVANCE   ( 1 << 1 )

Definition at line 1135 of file tttypes.h.

◆ TT_FACE_FLAG_VAR_LSB

#define TT_FACE_FLAG_VAR_LSB   ( 1 << 2 )

Definition at line 1136 of file tttypes.h.

◆ TT_FACE_FLAG_VAR_MVAR

#define TT_FACE_FLAG_VAR_MVAR   ( 1 << 8 )

Definition at line 1146 of file tttypes.h.

◆ TT_FACE_FLAG_VAR_RSB

#define TT_FACE_FLAG_VAR_RSB   ( 1 << 3 )

Definition at line 1137 of file tttypes.h.

◆ TT_FACE_FLAG_VAR_TSB

#define TT_FACE_FLAG_VAR_TSB   ( 1 << 5 )

Definition at line 1141 of file tttypes.h.

◆ TT_FACE_FLAG_VAR_VADVANCE

#define TT_FACE_FLAG_VAR_VADVANCE   ( 1 << 4 )

Definition at line 1140 of file tttypes.h.

◆ TT_FACE_FLAG_VAR_VORG

#define TT_FACE_FLAG_VAR_VORG   ( 1 << 7 )

Definition at line 1143 of file tttypes.h.

◆ TT_GASP_DOGRAY

#define TT_GASP_DOGRAY   0x02

Definition at line 353 of file tttypes.h.

◆ TT_GASP_GRIDFIT

#define TT_GASP_GRIDFIT   0x01

Definition at line 352 of file tttypes.h.

Typedef Documentation

◆ SFNT_Header

typedef struct SFNT_HeaderRec_ * SFNT_Header

◆ SFNT_HeaderRec

◆ TT_ExecContext

Definition at line 1711 of file tttypes.h.

◆ TT_Face

typedef struct TT_FaceRec_* TT_Face

This structure/class is defined here because it is common to the following formats: TTF, OpenType-TT, and OpenType-CFF.

Note, however, that the classes TT_Size and TT_GlyphSlot are not shared between font drivers, and are thus defined in ttobjs.h. @type: TT_Face

@description: A handle to a TrueType face/font object. A TT_Face encapsulates the resolution and scaling independent parts of a TrueType font resource.

Note
: The TT_Face structure is also used as a 'parent class' for the OpenType-CFF class (T2_Face).

Definition at line 988 of file tttypes.h.

◆ TT_FaceRec

typedef struct TT_FaceRec_ TT_FaceRec

◆ TT_GaspRange

typedef struct TT_GaspRangeRec_ * TT_GaspRange

◆ TT_GaspRangeRec

◆ TT_GaspRec

typedef struct TT_Gasp_ TT_GaspRec

◆ TT_GlyphZone

typedef struct TT_GlyphZoneRec_ * TT_GlyphZone

◆ TT_GlyphZoneRec

◆ TT_Interpreter

typedef FT_Error(* TT_Interpreter) (void *exec_context)

Definition at line 992 of file tttypes.h.

◆ TT_LangTag

typedef struct TT_LangTagRec_ * TT_LangTag

◆ TT_LangTagRec

typedef struct TT_LangTagRec_ TT_LangTagRec

◆ TT_Loader

typedef struct TT_LoaderRec_* TT_Loader

Definition at line 996 of file tttypes.h.

◆ TT_Loader_EndGlyphFunc

typedef void(* TT_Loader_EndGlyphFunc) (TT_Loader loader)

@functype: TT_Loader_EndGlyphFunc

@description: Closes the current loader stream frame for the glyph.

@input: loader :: The current TrueType glyph loader object.

Definition at line 1103 of file tttypes.h.

◆ TT_Loader_GotoTableFunc

typedef FT_Error(* TT_Loader_GotoTableFunc) (TT_Face face, FT_ULong tag, FT_Stream stream, FT_ULong *length)

@functype: TT_Loader_GotoTableFunc

@description: Seeks a stream to the start of a given TrueType table.

@input: face :: A handle to the target face object.

tag :: A 4-byte tag used to name the table.

stream :: The input stream.

@output: length :: The length of the table in bytes. Set to 0 if not needed.

Returns
: FreeType error code. 0 means success.
Note
: The stream cursor must be at the font file's origin.

Definition at line 1027 of file tttypes.h.

◆ TT_Loader_ReadGlyphFunc

typedef FT_Error(* TT_Loader_ReadGlyphFunc) (TT_Loader loader)

@functype: TT_Loader_ReadGlyphFunc

@description: Reads one glyph element (its header, a simple glyph, or a composite) from the loader's current stream frame.

@input: loader :: The current TrueType glyph loader object.

Returns
: FreeType error code. 0 means success.

Definition at line 1087 of file tttypes.h.

◆ TT_Loader_StartGlyphFunc

typedef FT_Error(* TT_Loader_StartGlyphFunc) (TT_Loader loader, FT_UInt glyph_index, FT_ULong offset, FT_UInt byte_count)

@functype: TT_Loader_StartGlyphFunc

@description: Seeks a stream to the start of a given glyph element, and opens a frame for it.

@input: loader :: The current TrueType glyph loader object.

glyph index :: The index of the glyph to access.

offset :: The offset of the glyph according to the 'locations' table.

byte_count :: The size of the frame in bytes.

Returns
: FreeType error code. 0 means success.
Note
: This function is normally equivalent to FT_STREAM_SEEK(offset) followed by FT_FRAME_ENTER(byte_count) with the loader's stream, but alternative formats (e.g. compressed ones) might use something different.

Definition at line 1064 of file tttypes.h.

◆ TT_LoaderRec

typedef struct TT_LoaderRec_ TT_LoaderRec

◆ TT_LongMetrics

◆ TT_LongMetricsRec

◆ TT_Name

typedef struct TT_NameRec_ * TT_Name

◆ TT_NameRec

typedef struct TT_NameRec_ TT_NameRec

◆ TT_NameTable

typedef struct TT_NameTableRec_ * TT_NameTable

◆ TT_NameTableRec

◆ TT_Post_20

typedef struct TT_Post_20Rec_ * TT_Post_20

◆ TT_Post_20Rec

typedef struct TT_Post_20Rec_ TT_Post_20Rec

◆ TT_Post_25

typedef struct TT_Post_25_ * TT_Post_25

◆ TT_Post_25Rec

typedef struct TT_Post_25_ TT_Post_25Rec

◆ TT_Post_Names

typedef struct TT_Post_NamesRec_ * TT_Post_Names

◆ TT_Post_NamesRec

◆ TT_SBit_Component

◆ TT_SBit_ComponentRec

◆ TT_SBit_LineMetrics

◆ TT_SBit_LineMetricsRec

◆ TT_SBit_Metrics

◆ TT_SBit_MetricsRec

◆ TT_SBit_Range

typedef struct TT_SBit_RangeRec_ * TT_SBit_Range

◆ TT_SBit_RangeRec

◆ TT_SBit_Scale

typedef struct TT_SBit_ScaleRec_ * TT_SBit_Scale

◆ TT_SBit_ScaleRec

◆ TT_SBit_SmallMetrics

◆ TT_SBit_SmallMetricsRec

◆ TT_SBit_Strike

◆ TT_SBit_StrikeRec

◆ TT_SbitTableType

◆ TT_ShortMetrics

@type: TT_ShortMetrics

@description: A simple type to model the short metrics of the 'hmtx' and 'vmtx' tables.

Definition at line 185 of file tttypes.h.

◆ TT_Size

typedef struct TT_SizeRec_* TT_Size

@type: TT_Size

@description: A handle to a TrueType size object.

Definition at line 1722 of file tttypes.h.

◆ TT_Table

typedef struct TT_TableRec_ * TT_Table

◆ TT_TableRec

typedef struct TT_TableRec_ TT_TableRec

◆ TTC_HeaderRec

typedef struct TTC_HeaderRec_ TTC_HeaderRec

Enumeration Type Documentation

◆ TT_SbitTableType_

Enumerator
TT_SBIT_TABLE_TYPE_NONE 
TT_SBIT_TABLE_TYPE_EBLC 
TT_SBIT_TABLE_TYPE_CBLC 
TT_SBIT_TABLE_TYPE_SBIX 
TT_SBIT_TABLE_TYPE_MAX 
TT_SBIT_TABLE_TYPE_NONE 
TT_SBIT_TABLE_TYPE_EBLC 
TT_SBIT_TABLE_TYPE_CBLC 
TT_SBIT_TABLE_TYPE_SBIX 
TT_SBIT_TABLE_TYPE_MAX 

Definition at line 1107 of file tttypes.h.