forked from minhngoc25a/freetype2
* include/freetype/internal/psglobals.h (removed),
include/freetype/internal/pshints.h, src/pshinter/pshglob.h: removing obsolete file * include/freetype/internal/tttypes.h, include/freetype/internal/sfnt.h, src/base/ftnames.c, src/cff/cffdrivr.c, src/sfnt/*.c, src/truetype/*.c: updated SFNT/TrueType type definitions
This commit is contained in:
parent
875e7b7fa6
commit
ad4597babc
10
ChangeLog
10
ChangeLog
|
@ -41,6 +41,16 @@
|
||||||
stc/type1/t1load.c, src/type1/t1tokens.h: updated common Postscript
|
stc/type1/t1load.c, src/type1/t1tokens.h: updated common Postscript
|
||||||
type definitions
|
type definitions
|
||||||
|
|
||||||
|
* include/freetype/internal/psglobals.h (removed),
|
||||||
|
include/freetype/internal/pshints.h,
|
||||||
|
src/pshinter/pshglob.h: removing obsolete file
|
||||||
|
|
||||||
|
* include/freetype/internal/tttypes.h,
|
||||||
|
include/freetype/internal/sfnt.h,
|
||||||
|
src/base/ftnames.c, src/cff/cffdrivr.c,
|
||||||
|
src/sfnt/*.c, src/truetype/*.c: updated SFNT/TrueType type
|
||||||
|
definitions
|
||||||
|
|
||||||
|
|
||||||
2002-03-13 Antoine Leca <antoine@oriolnet.com>
|
2002-03-13 Antoine Leca <antoine@oriolnet.com>
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,6 @@
|
||||||
#include <ft2build.h>
|
#include <ft2build.h>
|
||||||
#include FT_FREETYPE_H
|
#include FT_FREETYPE_H
|
||||||
#include FT_TYPE1_TABLES_H
|
#include FT_TYPE1_TABLES_H
|
||||||
#include FT_INTERNAL_POSTSCRIPT_GLOBALS_H
|
|
||||||
|
|
||||||
|
|
||||||
FT_BEGIN_HEADER
|
FT_BEGIN_HEADER
|
||||||
|
|
|
@ -133,7 +133,7 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <FuncType> */
|
/* <FuncType> */
|
||||||
/* TT_Load_SFNT_Header_Func */
|
/* TT_Load_SFNT_HeaderRec_Func */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* Loads the header of a SFNT font file. Supports collections. */
|
/* Loads the header of a SFNT font file. Supports collections. */
|
||||||
|
@ -162,10 +162,10 @@ FT_BEGIN_HEADER
|
||||||
/* values of `search_range', `entry_selector', and `range_shift'. */
|
/* values of `search_range', `entry_selector', and `range_shift'. */
|
||||||
/* */
|
/* */
|
||||||
typedef FT_Error
|
typedef FT_Error
|
||||||
(*TT_Load_SFNT_Header_Func)( TT_Face face,
|
(*TT_Load_SFNT_HeaderRec_Func)( TT_Face face,
|
||||||
FT_Stream stream,
|
FT_Stream stream,
|
||||||
FT_Long face_index,
|
FT_Long face_index,
|
||||||
SFNT_Header* sfnt );
|
SFNT_Header sfnt );
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -194,7 +194,7 @@ FT_BEGIN_HEADER
|
||||||
typedef FT_Error
|
typedef FT_Error
|
||||||
(*TT_Load_Directory_Func)( TT_Face face,
|
(*TT_Load_Directory_Func)( TT_Face face,
|
||||||
FT_Stream stream,
|
FT_Stream stream,
|
||||||
SFNT_Header* sfnt );
|
SFNT_Header sfnt );
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -284,7 +284,7 @@ FT_BEGIN_HEADER
|
||||||
FT_UInt load_flags,
|
FT_UInt load_flags,
|
||||||
FT_Stream stream,
|
FT_Stream stream,
|
||||||
FT_Bitmap *amap,
|
FT_Bitmap *amap,
|
||||||
TT_SBit_Metrics *ametrics );
|
TT_SBit_MetricsRec *ametrics );
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -392,7 +392,7 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
typedef FT_Error
|
typedef FT_Error
|
||||||
(*TT_CharMap_Load_Func)( TT_Face face,
|
(*TT_CharMap_Load_Func)( TT_Face face,
|
||||||
TT_CMapTable* cmap,
|
TT_CMapTable cmap,
|
||||||
FT_Stream input );
|
FT_Stream input );
|
||||||
|
|
||||||
|
|
||||||
|
@ -414,7 +414,7 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
typedef FT_Error
|
typedef FT_Error
|
||||||
(*TT_CharMap_Free_Func)( TT_Face face,
|
(*TT_CharMap_Free_Func)( TT_Face face,
|
||||||
TT_CMapTable* cmap );
|
TT_CMapTable cmap );
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -479,7 +479,7 @@ FT_BEGIN_HEADER
|
||||||
SFNT_Get_Interface_Func get_interface;
|
SFNT_Get_Interface_Func get_interface;
|
||||||
|
|
||||||
TT_Load_Any_Func load_any;
|
TT_Load_Any_Func load_any;
|
||||||
TT_Load_SFNT_Header_Func load_sfnt_header;
|
TT_Load_SFNT_HeaderRec_Func load_sfnt_header;
|
||||||
TT_Load_Directory_Func load_directory;
|
TT_Load_Directory_Func load_directory;
|
||||||
|
|
||||||
/* these functions are called by `load_face' but they can also */
|
/* these functions are called by `load_face' but they can also */
|
||||||
|
|
|
@ -45,7 +45,7 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TTC_Header */
|
/* TTC_HeaderRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* TrueType collection header. This table contains the offsets of */
|
/* TrueType collection header. This table contains the offsets of */
|
||||||
|
@ -63,20 +63,20 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* offsets :: The offsets of the font headers, one per face. */
|
/* offsets :: The offsets of the font headers, one per face. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TTC_Header_
|
typedef struct TTC_HeaderRec_
|
||||||
{
|
{
|
||||||
FT_ULong tag;
|
FT_ULong tag;
|
||||||
FT_Fixed version;
|
FT_Fixed version;
|
||||||
FT_Long count;
|
FT_Long count;
|
||||||
FT_ULong* offsets;
|
FT_ULong* offsets;
|
||||||
|
|
||||||
} TTC_Header;
|
} TTC_HeaderRec;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* SFNT_Header */
|
/* SFNT_HeaderRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* SFNT file format header. */
|
/* SFNT file format header. */
|
||||||
|
@ -92,7 +92,7 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* range_shift :: Must be num_tables*16 - search_range. */
|
/* range_shift :: Must be num_tables*16 - search_range. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct SFNT_Header_
|
typedef struct SFNT_HeaderRec_
|
||||||
{
|
{
|
||||||
FT_ULong format_tag;
|
FT_ULong format_tag;
|
||||||
FT_UShort num_tables;
|
FT_UShort num_tables;
|
||||||
|
@ -100,13 +100,13 @@ FT_BEGIN_HEADER
|
||||||
FT_UShort entry_selector;
|
FT_UShort entry_selector;
|
||||||
FT_UShort range_shift;
|
FT_UShort range_shift;
|
||||||
|
|
||||||
} SFNT_Header;
|
} SFNT_HeaderRec, *SFNT_Header;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_TableDir */
|
/* TT_TableDirRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* This structure models a TrueType table directory. It is used to */
|
/* This structure models a TrueType table directory. It is used to */
|
||||||
|
@ -126,7 +126,7 @@ FT_BEGIN_HEADER
|
||||||
/* <Note> */
|
/* <Note> */
|
||||||
/* This structure is only used during font opening. */
|
/* This structure is only used during font opening. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_TableDir_
|
typedef struct TT_TableDirRec_
|
||||||
{
|
{
|
||||||
FT_Fixed version; /* should be 0x10000 */
|
FT_Fixed version; /* should be 0x10000 */
|
||||||
FT_UShort numTables; /* number of tables */
|
FT_UShort numTables; /* number of tables */
|
||||||
|
@ -135,13 +135,13 @@ FT_BEGIN_HEADER
|
||||||
FT_UShort entrySelector; /* for a dichotomy search in the */
|
FT_UShort entrySelector; /* for a dichotomy search in the */
|
||||||
FT_UShort rangeShift; /* directory. We ignore them. */
|
FT_UShort rangeShift; /* directory. We ignore them. */
|
||||||
|
|
||||||
} TT_TableDir;
|
} TT_TableDirRec;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_Table */
|
/* TT_TableRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* This structure describes a given table of a TrueType font. */
|
/* This structure describes a given table of a TrueType font. */
|
||||||
|
@ -156,20 +156,20 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* Length :: The table length (in bytes). */
|
/* Length :: The table length (in bytes). */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_Table_
|
typedef struct TT_TableRec_
|
||||||
{
|
{
|
||||||
FT_ULong Tag; /* table type */
|
FT_ULong Tag; /* table type */
|
||||||
FT_ULong CheckSum; /* table checksum */
|
FT_ULong CheckSum; /* table checksum */
|
||||||
FT_ULong Offset; /* table file offset */
|
FT_ULong Offset; /* table file offset */
|
||||||
FT_ULong Length; /* table length */
|
FT_ULong Length; /* table length */
|
||||||
|
|
||||||
} TT_Table;
|
} TT_TableRec, *TT_Table;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_CMapDir */
|
/* TT_CMapDirRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* This structure describes the directory of the `cmap' table, */
|
/* This structure describes the directory of the `cmap' table, */
|
||||||
|
@ -183,18 +183,18 @@ FT_BEGIN_HEADER
|
||||||
/* <Note> */
|
/* <Note> */
|
||||||
/* This structure is only used during font loading. */
|
/* This structure is only used during font loading. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_CMapDir_
|
typedef struct TT_CMapDirRec_
|
||||||
{
|
{
|
||||||
FT_UShort tableVersionNumber;
|
FT_UShort tableVersionNumber;
|
||||||
FT_UShort numCMaps;
|
FT_UShort numCMaps;
|
||||||
|
|
||||||
} TT_CMapDir;
|
} TT_CMapDirRec, *TT_CMapDir;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_CMapDirEntry */
|
/* TT_CMapDirEntryRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* This structure describes a charmap in a TrueType font. */
|
/* This structure describes a charmap in a TrueType font. */
|
||||||
|
@ -212,19 +212,19 @@ FT_BEGIN_HEADER
|
||||||
/* <Note> */
|
/* <Note> */
|
||||||
/* This structure is only used during font loading. */
|
/* This structure is only used during font loading. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_CMapDirEntry_
|
typedef struct TT_CMapDirEntryRec_
|
||||||
{
|
{
|
||||||
FT_UShort platformID;
|
FT_UShort platformID;
|
||||||
FT_UShort platformEncodingID;
|
FT_UShort platformEncodingID;
|
||||||
FT_Long offset;
|
FT_Long offset;
|
||||||
|
|
||||||
} TT_CMapDirEntry;
|
} TT_CMapDirEntryRec, *TT_CMapDirEntry;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_LongMetrics */
|
/* TT_LongMetricsRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A structure modeling the long metrics of the `hmtx' and `vmtx' */
|
/* A structure modeling the long metrics of the `hmtx' and `vmtx' */
|
||||||
|
@ -235,12 +235,12 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* bearing :: The left-side or top-side bearing for the glyph. */
|
/* bearing :: The left-side or top-side bearing for the glyph. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_LongMetrics_
|
typedef struct TT_LongMetricsRec_
|
||||||
{
|
{
|
||||||
FT_UShort advance;
|
FT_UShort advance;
|
||||||
FT_Short bearing;
|
FT_Short bearing;
|
||||||
|
|
||||||
} TT_LongMetrics;
|
} TT_LongMetricsRec, *TT_LongMetrics;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -257,7 +257,7 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_NameRec */
|
/* TT_NameEntryRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A structure modeling TrueType name records. Name records are used */
|
/* A structure modeling TrueType name records. Name records are used */
|
||||||
|
@ -281,7 +281,7 @@ FT_BEGIN_HEADER
|
||||||
/* string :: A pointer to the string's bytes. Note that these */
|
/* string :: A pointer to the string's bytes. Note that these */
|
||||||
/* are usually UTF-16 encoded characters. */
|
/* are usually UTF-16 encoded characters. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_NameRec_
|
typedef struct TT_NameEntryRec_
|
||||||
{
|
{
|
||||||
FT_UShort platformID;
|
FT_UShort platformID;
|
||||||
FT_UShort encodingID;
|
FT_UShort encodingID;
|
||||||
|
@ -295,13 +295,13 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
FT_Byte* string;
|
FT_Byte* string;
|
||||||
|
|
||||||
} TT_NameRec;
|
} TT_NameEntryRec, *TT_NameEntry;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_NameTable */
|
/* TT_NameTableRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A structure modeling the TrueType name table. */
|
/* A structure modeling the TrueType name table. */
|
||||||
|
@ -318,15 +318,15 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* storage :: The names storage area. */
|
/* storage :: The names storage area. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_NameTable_
|
typedef struct TT_NameTableRec_
|
||||||
{
|
{
|
||||||
FT_UShort format;
|
FT_UShort format;
|
||||||
FT_UShort numNameRecords;
|
FT_UShort numNameRecords;
|
||||||
FT_UShort storageOffset;
|
FT_UShort storageOffset;
|
||||||
TT_NameRec* names;
|
TT_NameEntryRec* names;
|
||||||
FT_Byte* storage;
|
FT_Byte* storage;
|
||||||
|
|
||||||
} TT_NameTable;
|
} TT_NameTableRec, *TT_NameTable;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -345,7 +345,7 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_GaspRange */
|
/* TT_GaspRangeRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A tiny structure used to model a gasp range according to the */
|
/* A tiny structure used to model a gasp range according to the */
|
||||||
|
@ -357,12 +357,12 @@ FT_BEGIN_HEADER
|
||||||
/* gaspFlag :: A flag describing the grid-fitting and anti-aliasing */
|
/* gaspFlag :: A flag describing the grid-fitting and anti-aliasing */
|
||||||
/* modes to be used. */
|
/* modes to be used. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_GaspRange_
|
typedef struct TT_GaspRangeRec_
|
||||||
{
|
{
|
||||||
FT_UShort maxPPEM;
|
FT_UShort maxPPEM;
|
||||||
FT_UShort gaspFlag;
|
FT_UShort gaspFlag;
|
||||||
|
|
||||||
} TT_GaspRange;
|
} TT_GaspRangeRec, *TT_GaspRange;
|
||||||
|
|
||||||
|
|
||||||
#define TT_GASP_GRIDFIT 0x01
|
#define TT_GASP_GRIDFIT 0x01
|
||||||
|
@ -372,7 +372,7 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_Gasp */
|
/* TT_GaspRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A structure modeling the TrueType `gasp' table used to specify */
|
/* A structure modeling the TrueType `gasp' table used to specify */
|
||||||
|
@ -389,15 +389,15 @@ FT_BEGIN_HEADER
|
||||||
{
|
{
|
||||||
FT_UShort version;
|
FT_UShort version;
|
||||||
FT_UShort numRanges;
|
FT_UShort numRanges;
|
||||||
TT_GaspRange* gaspRanges;
|
TT_GaspRange gaspRanges;
|
||||||
|
|
||||||
} TT_Gasp;
|
} TT_GaspRec;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_HdmxRec */
|
/* TT_HdmxEntryRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A small structure used to model the pre-computed widths of a given */
|
/* A small structure used to model the pre-computed widths of a given */
|
||||||
|
@ -410,19 +410,19 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* widths :: An array of widths. Note: These are 8-bit bytes. */
|
/* widths :: An array of widths. Note: These are 8-bit bytes. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_HdmxRec_
|
typedef struct TT_HdmxEntryRec_
|
||||||
{
|
{
|
||||||
FT_Byte ppem;
|
FT_Byte ppem;
|
||||||
FT_Byte max_width;
|
FT_Byte max_width;
|
||||||
FT_Byte* widths;
|
FT_Byte* widths;
|
||||||
|
|
||||||
} TT_HdmxRec;
|
} TT_HdmxEntryRec, *TT_HdmxEntry;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_Hdmx */
|
/* TT_HdmxRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A structure used to model the `hdmx' table, which contains */
|
/* A structure used to model the `hdmx' table, which contains */
|
||||||
|
@ -435,19 +435,19 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* records :: An array of hdmx records. */
|
/* records :: An array of hdmx records. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_Hdmx_
|
typedef struct TT_HdmxRec_
|
||||||
{
|
{
|
||||||
FT_UShort version;
|
FT_UShort version;
|
||||||
FT_Short num_records;
|
FT_Short num_records;
|
||||||
TT_HdmxRec* records;
|
TT_HdmxEntry records;
|
||||||
|
|
||||||
} TT_Hdmx;
|
} TT_HdmxRec, *TT_Hdmx;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_Kern_0_Pair */
|
/* TT_Kern0_PairRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A structure used to model a kerning pair for the kerning table */
|
/* A structure used to model a kerning pair for the kerning table */
|
||||||
|
@ -462,13 +462,13 @@ FT_BEGIN_HEADER
|
||||||
/* value :: The kerning distance. A positive value spaces the */
|
/* value :: The kerning distance. A positive value spaces the */
|
||||||
/* glyphs, a negative one makes them closer. */
|
/* glyphs, a negative one makes them closer. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_Kern_0_Pair_
|
typedef struct TT_Kern0_PairRec_
|
||||||
{
|
{
|
||||||
FT_UShort left; /* index of left glyph in pair */
|
FT_UShort left; /* index of left glyph in pair */
|
||||||
FT_UShort right; /* index of right glyph in pair */
|
FT_UShort right; /* index of right glyph in pair */
|
||||||
FT_FWord value; /* kerning value */
|
FT_FWord value; /* kerning value */
|
||||||
|
|
||||||
} TT_Kern_0_Pair;
|
} TT_Kern0_PairRec, *TT_Kern0_Pair;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -487,7 +487,7 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_SBit_Metrics */
|
/* TT_SBit_MetricsRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A structure used to hold the big metrics of a given glyph bitmap */
|
/* A structure used to hold the big metrics of a given glyph bitmap */
|
||||||
|
@ -511,7 +511,7 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* vertAdvance :: The vertical advance. */
|
/* vertAdvance :: The vertical advance. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_SBit_Metrics_
|
typedef struct TT_SBit_MetricsRec_
|
||||||
{
|
{
|
||||||
FT_Byte height;
|
FT_Byte height;
|
||||||
FT_Byte width;
|
FT_Byte width;
|
||||||
|
@ -524,13 +524,13 @@ FT_BEGIN_HEADER
|
||||||
FT_Char vertBearingY;
|
FT_Char vertBearingY;
|
||||||
FT_Byte vertAdvance;
|
FT_Byte vertAdvance;
|
||||||
|
|
||||||
} TT_SBit_Metrics;
|
} TT_SBit_MetricsRec, *TT_SBit_Metrics;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_SBit_Small_Metrics */
|
/* TT_SBit_SmallMetricsRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A structure used to hold the small metrics of a given glyph bitmap */
|
/* A structure used to hold the small metrics of a given glyph bitmap */
|
||||||
|
@ -557,13 +557,13 @@ FT_BEGIN_HEADER
|
||||||
FT_Char bearingY;
|
FT_Char bearingY;
|
||||||
FT_Byte advance;
|
FT_Byte advance;
|
||||||
|
|
||||||
} TT_SBit_Small_Metrics;
|
} TT_SBit_SmallMetricsRec, *TT_SBit_SmallMetrics;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_SBit_Line_Metrics */
|
/* TT_SBit_LineMetricsRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A structure used to describe the text line metrics of a given */
|
/* A structure used to describe the text line metrics of a given */
|
||||||
|
@ -611,7 +611,7 @@ FT_BEGIN_HEADER
|
||||||
/* pads :: Unused (to make the size of the record */
|
/* pads :: Unused (to make the size of the record */
|
||||||
/* a multiple of 32 bits. */
|
/* a multiple of 32 bits. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_SBit_Line_Metrics_
|
typedef struct TT_SBit_LineMetricsRec_
|
||||||
{
|
{
|
||||||
FT_Char ascender;
|
FT_Char ascender;
|
||||||
FT_Char descender;
|
FT_Char descender;
|
||||||
|
@ -625,13 +625,13 @@ FT_BEGIN_HEADER
|
||||||
FT_Char min_after_BL;
|
FT_Char min_after_BL;
|
||||||
FT_Char pads[2];
|
FT_Char pads[2];
|
||||||
|
|
||||||
} TT_SBit_Line_Metrics;
|
} TT_SBit_LineMetricsRec, *TT_SBit_LineMetrics;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_SBit_Range */
|
/* TT_SBit_RangeRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A TrueType/OpenType subIndexTable as defined in the `EBLC' */
|
/* A TrueType/OpenType subIndexTable as defined in the `EBLC' */
|
||||||
|
@ -665,7 +665,7 @@ FT_BEGIN_HEADER
|
||||||
/* table_offset :: The offset of the index table in the `EBLC' */
|
/* table_offset :: The offset of the index table in the `EBLC' */
|
||||||
/* table. Only used during strike loading. */
|
/* table. Only used during strike loading. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_SBit_Range
|
typedef struct TT_SBit_RangeRec
|
||||||
{
|
{
|
||||||
FT_UShort first_glyph;
|
FT_UShort first_glyph;
|
||||||
FT_UShort last_glyph;
|
FT_UShort last_glyph;
|
||||||
|
@ -675,7 +675,7 @@ FT_BEGIN_HEADER
|
||||||
FT_ULong image_offset;
|
FT_ULong image_offset;
|
||||||
|
|
||||||
FT_ULong image_size;
|
FT_ULong image_size;
|
||||||
TT_SBit_Metrics metrics;
|
TT_SBit_MetricsRec metrics;
|
||||||
FT_ULong num_glyphs;
|
FT_ULong num_glyphs;
|
||||||
|
|
||||||
FT_ULong* glyph_offsets;
|
FT_ULong* glyph_offsets;
|
||||||
|
@ -683,13 +683,13 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
FT_ULong table_offset;
|
FT_ULong table_offset;
|
||||||
|
|
||||||
} TT_SBit_Range;
|
} TT_SBit_RangeRec, *TT_SBit_Range;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_SBit_Strike */
|
/* TT_SBit_StrikeRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A structure used describe a given bitmap strike in the `EBLC' */
|
/* A structure used describe a given bitmap strike in the `EBLC' */
|
||||||
|
@ -729,33 +729,33 @@ FT_BEGIN_HEADER
|
||||||
/* http://fonts.apple.com/ */
|
/* http://fonts.apple.com/ */
|
||||||
/* TTRefMan/RM06/Chap6bloc.html */
|
/* TTRefMan/RM06/Chap6bloc.html */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_SBit_Strike_
|
typedef struct TT_SBit_StrikeRec_
|
||||||
{
|
{
|
||||||
FT_Int num_ranges;
|
FT_Int num_ranges;
|
||||||
TT_SBit_Range* sbit_ranges;
|
TT_SBit_Range sbit_ranges;
|
||||||
FT_ULong ranges_offset;
|
FT_ULong ranges_offset;
|
||||||
|
|
||||||
FT_ULong color_ref;
|
FT_ULong color_ref;
|
||||||
|
|
||||||
TT_SBit_Line_Metrics hori;
|
TT_SBit_LineMetricsRec hori;
|
||||||
TT_SBit_Line_Metrics vert;
|
TT_SBit_LineMetricsRec vert;
|
||||||
|
|
||||||
FT_UShort start_glyph;
|
FT_UShort start_glyph;
|
||||||
FT_UShort end_glyph;
|
FT_UShort end_glyph;
|
||||||
|
|
||||||
FT_Byte x_ppem;
|
FT_Byte x_ppem;
|
||||||
FT_Byte y_ppem;
|
FT_Byte y_ppem;
|
||||||
|
|
||||||
FT_Byte bit_depth;
|
FT_Byte bit_depth;
|
||||||
FT_Char flags;
|
FT_Char flags;
|
||||||
|
|
||||||
} TT_SBit_Strike;
|
} TT_SBit_StrikeRec, *TT_SBit_Strike;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_SBit_Component */
|
/* TT_SBit_ComponentRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A simple structure to describe a compound sbit element. */
|
/* A simple structure to describe a compound sbit element. */
|
||||||
|
@ -767,19 +767,19 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* y_offset :: The element's top bearing. */
|
/* y_offset :: The element's top bearing. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_SBit_Component_
|
typedef struct TT_SBit_ComponentRec_
|
||||||
{
|
{
|
||||||
FT_UShort glyph_code;
|
FT_UShort glyph_code;
|
||||||
FT_Char x_offset;
|
FT_Char x_offset;
|
||||||
FT_Char y_offset;
|
FT_Char y_offset;
|
||||||
|
|
||||||
} TT_SBit_Component;
|
} TT_SBit_ComponentRec, *TT_SBit_Component;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_SBit_Scale */
|
/* TT_SBit_ScaleRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A structure used describe a given bitmap scaling table, as defined */
|
/* A structure used describe a given bitmap scaling table, as defined */
|
||||||
|
@ -798,10 +798,10 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* y_ppem_substitute :: Substitution y_ppem value. */
|
/* y_ppem_substitute :: Substitution y_ppem value. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_SBit_Scale_
|
typedef struct TT_SBit_ScaleRec_
|
||||||
{
|
{
|
||||||
TT_SBit_Line_Metrics hori;
|
TT_SBit_LineMetricsRec hori;
|
||||||
TT_SBit_Line_Metrics vert;
|
TT_SBit_LineMetricsRec vert;
|
||||||
|
|
||||||
FT_Byte x_ppem;
|
FT_Byte x_ppem;
|
||||||
FT_Byte y_ppem;
|
FT_Byte y_ppem;
|
||||||
|
@ -809,7 +809,7 @@ FT_BEGIN_HEADER
|
||||||
FT_Byte x_ppem_substitute;
|
FT_Byte x_ppem_substitute;
|
||||||
FT_Byte y_ppem_substitute;
|
FT_Byte y_ppem_substitute;
|
||||||
|
|
||||||
} TT_SBit_Scale;
|
} TT_SBit_ScaleRec, *TT_SBit_Scale;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -828,7 +828,7 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_Post_20 */
|
/* TT_Post_20Rec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* Postscript names sub-table, format 2.0. Stores the PS name of */
|
/* Postscript names sub-table, format 2.0. Stores the PS name of */
|
||||||
|
@ -843,20 +843,20 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* glyph_names :: The PS names not in Mac Encoding. */
|
/* glyph_names :: The PS names not in Mac Encoding. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_Post_20_
|
typedef struct TT_Post_20Rec_
|
||||||
{
|
{
|
||||||
FT_UShort num_glyphs;
|
FT_UShort num_glyphs;
|
||||||
FT_UShort num_names;
|
FT_UShort num_names;
|
||||||
FT_UShort* glyph_indices;
|
FT_UShort* glyph_indices;
|
||||||
FT_Char** glyph_names;
|
FT_Char** glyph_names;
|
||||||
|
|
||||||
} TT_Post_20;
|
} TT_Post_20Rec, *TT_Post_20;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_Post_25 */
|
/* TT_Post_25Rec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* Postscript names sub-table, format 2.5. Stores the PS name of */
|
/* Postscript names sub-table, format 2.5. Stores the PS name of */
|
||||||
|
@ -873,13 +873,13 @@ FT_BEGIN_HEADER
|
||||||
FT_UShort num_glyphs;
|
FT_UShort num_glyphs;
|
||||||
FT_Char* offsets;
|
FT_Char* offsets;
|
||||||
|
|
||||||
} TT_Post_25;
|
} TT_Post_25Rec, *TT_Post_25;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_Post_Names */
|
/* TT_Post_NamesRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* Postscript names table, either format 2.0 or 2.5. */
|
/* Postscript names table, either format 2.0 or 2.5. */
|
||||||
|
@ -891,18 +891,18 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* format_25 :: The sub-table used for format 2.5. */
|
/* format_25 :: The sub-table used for format 2.5. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_Post_Names_
|
typedef struct TT_Post_NamesRec_
|
||||||
{
|
{
|
||||||
FT_Bool loaded;
|
FT_Bool loaded;
|
||||||
|
|
||||||
union
|
union
|
||||||
{
|
{
|
||||||
TT_Post_20 format_20;
|
TT_Post_20Rec format_20;
|
||||||
TT_Post_25 format_25;
|
TT_Post_25Rec format_25;
|
||||||
|
|
||||||
} names;
|
} names;
|
||||||
|
|
||||||
} TT_Post_Names;
|
} TT_Post_NamesRec, *TT_Post_Names;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -926,22 +926,22 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
FT_Byte* glyphIdArray;
|
FT_Byte* glyphIdArray;
|
||||||
|
|
||||||
} TT_CMap0;
|
} TT_CMap0Rec, *TT_CMap0;
|
||||||
|
|
||||||
|
|
||||||
/* format 2 */
|
/* format 2 */
|
||||||
|
|
||||||
typedef struct TT_CMap2SubHeader_
|
typedef struct TT_CMap2SubHeaderRec_
|
||||||
{
|
{
|
||||||
FT_UShort firstCode; /* first valid low byte */
|
FT_UShort firstCode; /* first valid low byte */
|
||||||
FT_UShort entryCount; /* number of valid low bytes */
|
FT_UShort entryCount; /* number of valid low bytes */
|
||||||
FT_Short idDelta; /* delta value to glyphIndex */
|
FT_Short idDelta; /* delta value to glyphIndex */
|
||||||
FT_UShort idRangeOffset; /* offset from here to 1st code */
|
FT_UShort idRangeOffset; /* offset from here to 1st code */
|
||||||
|
|
||||||
} TT_CMap2SubHeader;
|
} TT_CMap2SubHeaderRec, *TT_CMap2SubHeader;
|
||||||
|
|
||||||
|
|
||||||
typedef struct TT_CMap2_
|
typedef struct TT_CMap2Rec_
|
||||||
{
|
{
|
||||||
FT_ULong language; /* for Mac fonts (originally ushort) */
|
FT_ULong language; /* for Mac fonts (originally ushort) */
|
||||||
|
|
||||||
|
@ -949,11 +949,11 @@ FT_BEGIN_HEADER
|
||||||
/* high byte mapping table */
|
/* high byte mapping table */
|
||||||
/* value = subHeader index * 8 */
|
/* value = subHeader index * 8 */
|
||||||
|
|
||||||
TT_CMap2SubHeader* subHeaders;
|
TT_CMap2SubHeader subHeaders;
|
||||||
FT_UShort* glyphIdArray;
|
FT_UShort* glyphIdArray;
|
||||||
FT_UShort numGlyphId; /* control value */
|
FT_UShort numGlyphId; /* control value */
|
||||||
|
|
||||||
} TT_CMap2;
|
} TT_CMap2Rec, *TT_CMap2;
|
||||||
|
|
||||||
|
|
||||||
/* format 4 */
|
/* format 4 */
|
||||||
|
@ -965,10 +965,10 @@ FT_BEGIN_HEADER
|
||||||
FT_Short idDelta;
|
FT_Short idDelta;
|
||||||
FT_UShort idRangeOffset;
|
FT_UShort idRangeOffset;
|
||||||
|
|
||||||
} TT_CMap4Segment;
|
} TT_CMap4SegmentRec, *TT_CMap4Segment;
|
||||||
|
|
||||||
|
|
||||||
typedef struct TT_CMap4_
|
typedef struct TT_CMap4Rec_
|
||||||
{
|
{
|
||||||
FT_ULong language; /* for Mac fonts (originally ushort) */
|
FT_ULong language; /* for Mac fonts (originally ushort) */
|
||||||
|
|
||||||
|
@ -977,13 +977,13 @@ FT_BEGIN_HEADER
|
||||||
FT_UShort entrySelector; /* for a binary search */
|
FT_UShort entrySelector; /* for a binary search */
|
||||||
FT_UShort rangeShift;
|
FT_UShort rangeShift;
|
||||||
|
|
||||||
TT_CMap4Segment* segments;
|
TT_CMap4Segment segments;
|
||||||
FT_UShort* glyphIdArray;
|
FT_UShort* glyphIdArray;
|
||||||
FT_UShort numGlyphId; /* control value */
|
FT_UShort numGlyphId; /* control value */
|
||||||
|
|
||||||
TT_CMap4Segment* last_segment; /* last used segment; this is a small */
|
TT_CMap4Segment last_segment; /* last used segment; this is a small */
|
||||||
/* cache to potentially increase speed */
|
/* cache to potentially increase speed */
|
||||||
} TT_CMap4;
|
} TT_CMap4Rec, *TT_CMap4;
|
||||||
|
|
||||||
|
|
||||||
/* format 6 */
|
/* format 6 */
|
||||||
|
@ -997,18 +997,18 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
FT_UShort* glyphIdArray;
|
FT_UShort* glyphIdArray;
|
||||||
|
|
||||||
} TT_CMap6;
|
} TT_CMap6Rec, *TT_CMap6;
|
||||||
|
|
||||||
|
|
||||||
/* auxiliary table for format 8 and 12 */
|
/* auxiliary table for format 8 and 12 */
|
||||||
|
|
||||||
typedef struct TT_CMapGroup_
|
typedef struct TT_CMapGroupRec_
|
||||||
{
|
{
|
||||||
FT_ULong startCharCode;
|
FT_ULong startCharCode;
|
||||||
FT_ULong endCharCode;
|
FT_ULong endCharCode;
|
||||||
FT_ULong startGlyphID;
|
FT_ULong startGlyphID;
|
||||||
|
|
||||||
} TT_CMapGroup;
|
} TT_CMapGroupRec, *TT_CMapGroup;
|
||||||
|
|
||||||
|
|
||||||
/* FreeType handles format 8 and 12 identically. It is not necessary to
|
/* FreeType handles format 8 and 12 identically. It is not necessary to
|
||||||
|
@ -1016,21 +1016,21 @@ FT_BEGIN_HEADER
|
||||||
for input character codes -- converting Unicode surrogates to 32bit
|
for input character codes -- converting Unicode surrogates to 32bit
|
||||||
character codes must be done by the application. */
|
character codes must be done by the application. */
|
||||||
|
|
||||||
typedef struct TT_CMap8_12_
|
typedef struct TT_CMap8_12Rec_
|
||||||
{
|
{
|
||||||
FT_ULong language; /* for Mac fonts */
|
FT_ULong language; /* for Mac fonts */
|
||||||
|
|
||||||
FT_ULong nGroups;
|
FT_ULong nGroups;
|
||||||
TT_CMapGroup* groups;
|
TT_CMapGroup groups;
|
||||||
|
|
||||||
TT_CMapGroup* last_group; /* last used group; this is a small */
|
TT_CMapGroup last_group; /* last used group; this is a small */
|
||||||
/* cache to potentially increase speed */
|
/* cache to potentially increase speed */
|
||||||
} TT_CMap8_12;
|
} TT_CMap8_12Rec, *TT_CMap8_12;
|
||||||
|
|
||||||
|
|
||||||
/* format 10 */
|
/* format 10 */
|
||||||
|
|
||||||
typedef struct TT_CMap10_
|
typedef struct TT_CMap10Rec_
|
||||||
{
|
{
|
||||||
FT_ULong language; /* for Mac fonts */
|
FT_ULong language; /* for Mac fonts */
|
||||||
|
|
||||||
|
@ -1039,23 +1039,23 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
FT_UShort* glyphs;
|
FT_UShort* glyphs;
|
||||||
|
|
||||||
} TT_CMap10;
|
} TT_CMap10Rec, *TT_CMap10;
|
||||||
|
|
||||||
|
|
||||||
typedef struct TT_CMapTable_ TT_CMapTable;
|
typedef struct TT_CMapTableRec_* TT_CMapTable;
|
||||||
|
|
||||||
|
|
||||||
typedef FT_UInt
|
typedef FT_UInt
|
||||||
(*TT_CharMap_Func)( TT_CMapTable* charmap,
|
(*TT_CharMap_Func)( TT_CMapTable charmap,
|
||||||
FT_ULong char_code );
|
FT_ULong char_code );
|
||||||
|
|
||||||
typedef FT_ULong
|
typedef FT_ULong
|
||||||
(*TT_CharNext_Func)( TT_CMapTable* charmap,
|
(*TT_CharNext_Func)( TT_CMapTable charmap,
|
||||||
FT_ULong char_code );
|
FT_ULong char_code );
|
||||||
|
|
||||||
|
|
||||||
/* charmap table */
|
/* charmap table */
|
||||||
struct TT_CMapTable_
|
typedef struct TT_CMapTableRec_
|
||||||
{
|
{
|
||||||
FT_UShort platformID;
|
FT_UShort platformID;
|
||||||
FT_UShort platformEncodingID;
|
FT_UShort platformEncodingID;
|
||||||
|
@ -1067,17 +1067,18 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
union
|
union
|
||||||
{
|
{
|
||||||
TT_CMap0 cmap0;
|
TT_CMap0Rec cmap0;
|
||||||
TT_CMap2 cmap2;
|
TT_CMap2Rec cmap2;
|
||||||
TT_CMap4 cmap4;
|
TT_CMap4Rec cmap4;
|
||||||
TT_CMap6 cmap6;
|
TT_CMap6Rec cmap6;
|
||||||
TT_CMap8_12 cmap8_12;
|
TT_CMap8_12Rec cmap8_12;
|
||||||
TT_CMap10 cmap10;
|
TT_CMap10Rec cmap10;
|
||||||
} c;
|
} c;
|
||||||
|
|
||||||
TT_CharMap_Func get_index;
|
TT_CharMap_Func get_index;
|
||||||
TT_CharNext_Func get_next_char;
|
TT_CharNext_Func get_next_char;
|
||||||
};
|
|
||||||
|
} TT_CMapTableRec;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -1095,8 +1096,8 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_CharMapRec_
|
typedef struct TT_CharMapRec_
|
||||||
{
|
{
|
||||||
FT_CharMapRec root;
|
FT_CharMapRec root;
|
||||||
TT_CMapTable cmap;
|
TT_CMapTableRec cmap;
|
||||||
|
|
||||||
} TT_CharMapRec;
|
} TT_CharMapRec;
|
||||||
|
|
||||||
|
@ -1161,7 +1162,7 @@ FT_BEGIN_HEADER
|
||||||
(*TT_Interpreter)( void* exec_context );
|
(*TT_Interpreter)( void* exec_context );
|
||||||
|
|
||||||
/* forward declaration */
|
/* forward declaration */
|
||||||
typedef struct TT_Loader_ TT_Loader;
|
typedef struct TT_LoaderRec_* TT_Loader;
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -1199,7 +1200,7 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <FuncType> */
|
/* <FuncType> */
|
||||||
/* TT_Access_Glyph_Frame_Func */
|
/* TT_Loader_StartGlyphFunc */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* Seeks a stream to the start of a given glyph element, and opens a */
|
/* Seeks a stream to the start of a given glyph element, and opens a */
|
||||||
|
@ -1225,7 +1226,7 @@ FT_BEGIN_HEADER
|
||||||
/* different. */
|
/* different. */
|
||||||
/* */
|
/* */
|
||||||
typedef FT_Error
|
typedef FT_Error
|
||||||
(*TT_Access_Glyph_Frame_Func)( TT_Loader* loader,
|
(*TT_Loader_StartGlyphFunc)( TT_Loader loader,
|
||||||
FT_UInt glyph_index,
|
FT_UInt glyph_index,
|
||||||
FT_ULong offset,
|
FT_ULong offset,
|
||||||
FT_UInt byte_count );
|
FT_UInt byte_count );
|
||||||
|
@ -1234,7 +1235,7 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <FuncType> */
|
/* <FuncType> */
|
||||||
/* TT_Load_Glyph_Element_Func */
|
/* TT_Loader_ReadGlyphFunc */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* Reads one glyph element (its header, a simple glyph, or a */
|
/* Reads one glyph element (its header, a simple glyph, or a */
|
||||||
|
@ -1247,13 +1248,13 @@ FT_BEGIN_HEADER
|
||||||
/* FreeType error code. 0 means success. */
|
/* FreeType error code. 0 means success. */
|
||||||
/* */
|
/* */
|
||||||
typedef FT_Error
|
typedef FT_Error
|
||||||
(*TT_Load_Glyph_Element_Func)( TT_Loader* loader );
|
(*TT_Loader_ReadGlyphFunc)( TT_Loader loader );
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <FuncType> */
|
/* <FuncType> */
|
||||||
/* TT_Forget_Glyph_Frame_Func */
|
/* TT_Loader_EndGlyphFunc */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* Closes the current loader stream frame for the glyph. */
|
/* Closes the current loader stream frame for the glyph. */
|
||||||
|
@ -1262,7 +1263,7 @@ FT_BEGIN_HEADER
|
||||||
/* loader :: The current TrueType glyph loader object. */
|
/* loader :: The current TrueType glyph loader object. */
|
||||||
/* */
|
/* */
|
||||||
typedef void
|
typedef void
|
||||||
(*TT_Forget_Glyph_Frame_Func)( TT_Loader* loader );
|
(*TT_Loader_EndGlyphFunc)( TT_Loader loader );
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -1452,11 +1453,11 @@ FT_BEGIN_HEADER
|
||||||
{
|
{
|
||||||
FT_FaceRec root;
|
FT_FaceRec root;
|
||||||
|
|
||||||
TTC_Header ttc_header;
|
TTC_HeaderRec ttc_header;
|
||||||
|
|
||||||
FT_ULong format_tag;
|
FT_ULong format_tag;
|
||||||
FT_UShort num_tables;
|
FT_UShort num_tables;
|
||||||
TT_Table* dir_tables;
|
TT_Table dir_tables;
|
||||||
|
|
||||||
TT_Header header; /* TrueType header table */
|
TT_Header header; /* TrueType header table */
|
||||||
TT_HoriHeader horizontal; /* TrueType horizontal header */
|
TT_HoriHeader horizontal; /* TrueType horizontal header */
|
||||||
|
@ -1468,7 +1469,7 @@ FT_BEGIN_HEADER
|
||||||
TT_VertHeader vertical; /* TT Vertical header, if present */
|
TT_VertHeader vertical; /* TT Vertical header, if present */
|
||||||
|
|
||||||
FT_UShort num_names; /* number of name records */
|
FT_UShort num_names; /* number of name records */
|
||||||
TT_NameTable name_table; /* name table */
|
TT_NameTableRec name_table; /* name table */
|
||||||
|
|
||||||
TT_OS2 os2; /* TrueType OS/2 table */
|
TT_OS2 os2; /* TrueType OS/2 table */
|
||||||
TT_Postscript postscript; /* TrueType Postscript table */
|
TT_Postscript postscript; /* TrueType Postscript table */
|
||||||
|
@ -1487,11 +1488,11 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
TT_Goto_Table_Func goto_table;
|
TT_Goto_Table_Func goto_table;
|
||||||
|
|
||||||
TT_Access_Glyph_Frame_Func access_glyph_frame;
|
TT_Loader_StartGlyphFunc access_glyph_frame;
|
||||||
TT_Load_Glyph_Element_Func read_glyph_header;
|
TT_Loader_EndGlyphFunc forget_glyph_frame;
|
||||||
TT_Load_Glyph_Element_Func read_simple_glyph;
|
TT_Loader_ReadGlyphFunc read_glyph_header;
|
||||||
TT_Load_Glyph_Element_Func read_composite_glyph;
|
TT_Loader_ReadGlyphFunc read_simple_glyph;
|
||||||
TT_Forget_Glyph_Frame_Func forget_glyph_frame;
|
TT_Loader_ReadGlyphFunc read_composite_glyph;
|
||||||
|
|
||||||
/* a typeless pointer to the SFNT_Interface table used to load */
|
/* a typeless pointer to the SFNT_Interface table used to load */
|
||||||
/* the basic TrueType tables in the face object */
|
/* the basic TrueType tables in the face object */
|
||||||
|
@ -1508,23 +1509,23 @@ FT_BEGIN_HEADER
|
||||||
/***********************************************************************/
|
/***********************************************************************/
|
||||||
|
|
||||||
/* horizontal device metrics */
|
/* horizontal device metrics */
|
||||||
TT_Hdmx hdmx;
|
TT_HdmxRec hdmx;
|
||||||
|
|
||||||
/* grid-fitting and scaling table */
|
/* grid-fitting and scaling table */
|
||||||
TT_Gasp gasp; /* the `gasp' table */
|
TT_GaspRec gasp; /* the `gasp' table */
|
||||||
|
|
||||||
/* PCL 5 table */
|
/* PCL 5 table */
|
||||||
TT_PCLT pclt;
|
TT_PCLT pclt;
|
||||||
|
|
||||||
/* embedded bitmaps support */
|
/* embedded bitmaps support */
|
||||||
FT_Int num_sbit_strikes;
|
FT_Int num_sbit_strikes;
|
||||||
TT_SBit_Strike* sbit_strikes;
|
TT_SBit_Strike sbit_strikes;
|
||||||
|
|
||||||
FT_Int num_sbit_scales;
|
FT_Int num_sbit_scales;
|
||||||
TT_SBit_Scale* sbit_scales;
|
TT_SBit_Scale sbit_scales;
|
||||||
|
|
||||||
/* postscript names table */
|
/* postscript names table */
|
||||||
TT_Post_Names postscript_names;
|
TT_Post_NamesRec postscript_names;
|
||||||
|
|
||||||
|
|
||||||
/***********************************************************************/
|
/***********************************************************************/
|
||||||
|
@ -1552,7 +1553,7 @@ FT_BEGIN_HEADER
|
||||||
/* the format 0 kerning table, if any */
|
/* the format 0 kerning table, if any */
|
||||||
FT_Int num_kern_pairs;
|
FT_Int num_kern_pairs;
|
||||||
FT_Int kern_table_index;
|
FT_Int kern_table_index;
|
||||||
TT_Kern_0_Pair* kern_pairs;
|
TT_Kern0_Pair kern_pairs;
|
||||||
|
|
||||||
/* A pointer to the bytecode interpreter to use. This is also */
|
/* A pointer to the bytecode interpreter to use. This is also */
|
||||||
/* used to hook the debugger for the `ttdebug' utility. */
|
/* used to hook the debugger for the `ttdebug' utility. */
|
||||||
|
@ -1566,7 +1567,7 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/***********************************************************************/
|
/***********************************************************************/
|
||||||
|
|
||||||
FT_Generic extra;
|
FT_Generic extra;
|
||||||
|
|
||||||
} TT_FaceRec;
|
} TT_FaceRec;
|
||||||
|
|
||||||
|
@ -1574,7 +1575,7 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* TT_GlyphZone */
|
/* TT_GlyphZoneRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A glyph zone is used to load, scale and hint glyph outline */
|
/* A glyph zone is used to load, scale and hint glyph outline */
|
||||||
|
@ -1600,7 +1601,7 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* contours :: The contours end points. */
|
/* contours :: The contours end points. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct TT_GlyphZone_
|
typedef struct TT_GlyphZoneRec_
|
||||||
{
|
{
|
||||||
FT_Memory memory;
|
FT_Memory memory;
|
||||||
FT_UShort max_points;
|
FT_UShort max_points;
|
||||||
|
@ -1614,14 +1615,14 @@ FT_BEGIN_HEADER
|
||||||
FT_Byte* tags; /* current touch flags */
|
FT_Byte* tags; /* current touch flags */
|
||||||
FT_UShort* contours; /* contour end points */
|
FT_UShort* contours; /* contour end points */
|
||||||
|
|
||||||
} TT_GlyphZone;
|
} TT_GlyphZoneRec, *TT_GlyphZone;
|
||||||
|
|
||||||
|
|
||||||
/* handle to execution context */
|
/* handle to execution context */
|
||||||
typedef struct TT_ExecContextRec_* TT_ExecContext;
|
typedef struct TT_ExecContextRec_* TT_ExecContext;
|
||||||
|
|
||||||
/* glyph loader structure */
|
/* glyph loader structure */
|
||||||
struct TT_Loader_
|
typedef struct TT_LoaderRec_
|
||||||
{
|
{
|
||||||
FT_Face face;
|
FT_Face face;
|
||||||
FT_Size size;
|
FT_Size size;
|
||||||
|
@ -1647,8 +1648,8 @@ FT_BEGIN_HEADER
|
||||||
FT_ULong glyf_offset;
|
FT_ULong glyf_offset;
|
||||||
|
|
||||||
/* the zone where we load our glyphs */
|
/* the zone where we load our glyphs */
|
||||||
TT_GlyphZone base;
|
TT_GlyphZoneRec base;
|
||||||
TT_GlyphZone zone;
|
TT_GlyphZoneRec zone;
|
||||||
|
|
||||||
TT_ExecContext exec;
|
TT_ExecContext exec;
|
||||||
FT_Byte* instructions;
|
FT_Byte* instructions;
|
||||||
|
@ -1656,7 +1657,8 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
/* for possible extensibility in other formats */
|
/* for possible extensibility in other formats */
|
||||||
void* other;
|
void* other;
|
||||||
};
|
|
||||||
|
} TT_LoaderRec;
|
||||||
|
|
||||||
|
|
||||||
FT_END_HEADER
|
FT_END_HEADER
|
||||||
|
|
|
@ -53,7 +53,7 @@
|
||||||
|
|
||||||
if ( idx < (FT_UInt)ttface->num_names )
|
if ( idx < (FT_UInt)ttface->num_names )
|
||||||
{
|
{
|
||||||
TT_NameRec* name = ttface->name_table.names + idx;
|
TT_NameEntryRec* name = ttface->name_table.names + idx;
|
||||||
|
|
||||||
|
|
||||||
aname->platform_id = name->platformID;
|
aname->platform_id = name->platformID;
|
||||||
|
|
|
@ -97,7 +97,7 @@
|
||||||
FT_UInt right_glyph,
|
FT_UInt right_glyph,
|
||||||
FT_Vector* kerning )
|
FT_Vector* kerning )
|
||||||
{
|
{
|
||||||
TT_Kern_0_Pair* pair;
|
TT_Kern0_Pair pair;
|
||||||
|
|
||||||
|
|
||||||
if ( !face )
|
if ( !face )
|
||||||
|
@ -295,7 +295,7 @@
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
CFF_Face face;
|
CFF_Face face;
|
||||||
TT_CMapTable* cmap;
|
TT_CMapTable cmap;
|
||||||
|
|
||||||
|
|
||||||
cmap = &charmap->cmap;
|
cmap = &charmap->cmap;
|
||||||
|
@ -339,7 +339,7 @@
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
CFF_Face face;
|
CFF_Face face;
|
||||||
TT_CMapTable* cmap;
|
TT_CMapTable cmap;
|
||||||
|
|
||||||
|
|
||||||
cmap = &charmap->cmap;
|
cmap = &charmap->cmap;
|
||||||
|
|
|
@ -21,7 +21,6 @@
|
||||||
|
|
||||||
|
|
||||||
#include FT_FREETYPE_H
|
#include FT_FREETYPE_H
|
||||||
#include FT_INTERNAL_POSTSCRIPT_GLOBALS_H
|
|
||||||
#include FT_INTERNAL_POSTSCRIPT_HINTS_H
|
#include FT_INTERNAL_POSTSCRIPT_HINTS_H
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -128,7 +128,7 @@
|
||||||
|
|
||||||
for ( n = 0; n < face->num_names; n++ )
|
for ( n = 0; n < face->num_names; n++ )
|
||||||
{
|
{
|
||||||
TT_NameRec* name = face->name_table.names + n;
|
TT_NameEntryRec* name = face->name_table.names + n;
|
||||||
|
|
||||||
|
|
||||||
if ( name->nameID == 6 && name->string != NULL )
|
if ( name->nameID == 6 && name->string != NULL )
|
||||||
|
@ -148,7 +148,7 @@
|
||||||
if ( found_win )
|
if ( found_win )
|
||||||
{
|
{
|
||||||
FT_Memory memory = face->root.memory;
|
FT_Memory memory = face->root.memory;
|
||||||
TT_NameRec* name = face->name_table.names + found_win;
|
TT_NameEntryRec* name = face->name_table.names + found_win;
|
||||||
FT_UInt len = name->stringLength/2;
|
FT_UInt len = name->stringLength/2;
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
FT_String* result;
|
FT_String* result;
|
||||||
|
@ -171,7 +171,7 @@
|
||||||
if ( found_apple )
|
if ( found_apple )
|
||||||
{
|
{
|
||||||
FT_Memory memory = face->root.memory;
|
FT_Memory memory = face->root.memory;
|
||||||
TT_NameRec* name = face->name_table.names + found_win;
|
TT_NameEntryRec* name = face->name_table.names + found_win;
|
||||||
FT_UInt len = name->stringLength;
|
FT_UInt len = name->stringLength;
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
FT_String* result;
|
FT_String* result;
|
||||||
|
@ -223,7 +223,7 @@
|
||||||
SFNT_Get_Interface,
|
SFNT_Get_Interface,
|
||||||
|
|
||||||
TT_Load_Any,
|
TT_Load_Any,
|
||||||
TT_Load_SFNT_Header,
|
TT_Load_SFNT_HeaderRec,
|
||||||
TT_Load_Directory,
|
TT_Load_Directory,
|
||||||
|
|
||||||
TT_Load_Header,
|
TT_Load_Header,
|
||||||
|
|
|
@ -59,7 +59,7 @@
|
||||||
{
|
{
|
||||||
FT_Memory memory = face->root.memory;
|
FT_Memory memory = face->root.memory;
|
||||||
FT_UShort n;
|
FT_UShort n;
|
||||||
TT_NameRec* rec;
|
TT_NameEntryRec* rec;
|
||||||
FT_Bool wide_chars = 1;
|
FT_Bool wide_chars = 1;
|
||||||
FT_Int found_apple = -1;
|
FT_Int found_apple = -1;
|
||||||
FT_Int found_win = -1;
|
FT_Int found_win = -1;
|
||||||
|
@ -215,7 +215,7 @@
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
FT_Library library = face->root.driver->root.library;
|
FT_Library library = face->root.driver->root.library;
|
||||||
SFNT_Service sfnt;
|
SFNT_Service sfnt;
|
||||||
SFNT_Header sfnt_header;
|
SFNT_HeaderRec sfnt_header;
|
||||||
|
|
||||||
/* for now, parameters are unused */
|
/* for now, parameters are unused */
|
||||||
FT_UNUSED( num_params );
|
FT_UNUSED( num_params );
|
||||||
|
|
|
@ -35,51 +35,51 @@
|
||||||
|
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_UInt )
|
FT_CALLBACK_DEF( FT_UInt )
|
||||||
code_to_index0( TT_CMapTable* charmap,
|
code_to_index0( TT_CMapTable charmap,
|
||||||
FT_ULong char_code );
|
FT_ULong char_code );
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_ULong )
|
FT_CALLBACK_DEF( FT_ULong )
|
||||||
code_to_next0( TT_CMapTable* charmap,
|
code_to_next0( TT_CMapTable charmap,
|
||||||
FT_ULong char_code );
|
FT_ULong char_code );
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_UInt )
|
FT_CALLBACK_DEF( FT_UInt )
|
||||||
code_to_index2( TT_CMapTable* charmap,
|
code_to_index2( TT_CMapTable charmap,
|
||||||
FT_ULong char_code );
|
FT_ULong char_code );
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_ULong )
|
FT_CALLBACK_DEF( FT_ULong )
|
||||||
code_to_next2( TT_CMapTable* charmap,
|
code_to_next2( TT_CMapTable charmap,
|
||||||
FT_ULong char_code );
|
FT_ULong char_code );
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_UInt )
|
FT_CALLBACK_DEF( FT_UInt )
|
||||||
code_to_index4( TT_CMapTable* charmap,
|
code_to_index4( TT_CMapTable charmap,
|
||||||
FT_ULong char_code );
|
FT_ULong char_code );
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_ULong )
|
FT_CALLBACK_DEF( FT_ULong )
|
||||||
code_to_next4( TT_CMapTable* charmap,
|
code_to_next4( TT_CMapTable charmap,
|
||||||
FT_ULong char_code );
|
FT_ULong char_code );
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_UInt )
|
FT_CALLBACK_DEF( FT_UInt )
|
||||||
code_to_index6( TT_CMapTable* charmap,
|
code_to_index6( TT_CMapTable charmap,
|
||||||
FT_ULong char_code );
|
FT_ULong char_code );
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_ULong )
|
FT_CALLBACK_DEF( FT_ULong )
|
||||||
code_to_next6( TT_CMapTable* charmap,
|
code_to_next6( TT_CMapTable charmap,
|
||||||
FT_ULong char_code );
|
FT_ULong char_code );
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_UInt )
|
FT_CALLBACK_DEF( FT_UInt )
|
||||||
code_to_index8_12( TT_CMapTable* charmap,
|
code_to_index8_12( TT_CMapTable charmap,
|
||||||
FT_ULong char_code );
|
FT_ULong char_code );
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_ULong )
|
FT_CALLBACK_DEF( FT_ULong )
|
||||||
code_to_next8_12( TT_CMapTable* charmap,
|
code_to_next8_12( TT_CMapTable charmap,
|
||||||
FT_ULong char_code );
|
FT_ULong char_code );
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_UInt )
|
FT_CALLBACK_DEF( FT_UInt )
|
||||||
code_to_index10( TT_CMapTable* charmap,
|
code_to_index10( TT_CMapTable charmap,
|
||||||
FT_ULong char_code );
|
FT_ULong char_code );
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_ULong )
|
FT_CALLBACK_DEF( FT_ULong )
|
||||||
code_to_next10( TT_CMapTable* charmap,
|
code_to_next10( TT_CMapTable charmap,
|
||||||
FT_ULong char_code );
|
FT_ULong char_code );
|
||||||
|
|
||||||
|
|
||||||
|
@ -108,7 +108,7 @@
|
||||||
/* */
|
/* */
|
||||||
FT_LOCAL_DEF( FT_Error )
|
FT_LOCAL_DEF( FT_Error )
|
||||||
TT_CharMap_Load( TT_Face face,
|
TT_CharMap_Load( TT_Face face,
|
||||||
TT_CMapTable* cmap,
|
TT_CMapTable cmap,
|
||||||
FT_Stream stream )
|
FT_Stream stream )
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
|
@ -118,16 +118,16 @@
|
||||||
|
|
||||||
FT_UShort u, l;
|
FT_UShort u, l;
|
||||||
|
|
||||||
TT_CMap0* cmap0;
|
TT_CMap0 cmap0;
|
||||||
TT_CMap2* cmap2;
|
TT_CMap2 cmap2;
|
||||||
TT_CMap4* cmap4;
|
TT_CMap4 cmap4;
|
||||||
TT_CMap6* cmap6;
|
TT_CMap6 cmap6;
|
||||||
TT_CMap8_12* cmap8_12;
|
TT_CMap8_12 cmap8_12;
|
||||||
TT_CMap10* cmap10;
|
TT_CMap10 cmap10;
|
||||||
|
|
||||||
TT_CMap2SubHeader* cmap2sub;
|
TT_CMap2SubHeader cmap2sub;
|
||||||
TT_CMap4Segment* segments;
|
TT_CMap4Segment segments;
|
||||||
TT_CMapGroup* groups;
|
TT_CMapGroup groups;
|
||||||
|
|
||||||
|
|
||||||
if ( cmap->loaded )
|
if ( cmap->loaded )
|
||||||
|
@ -182,7 +182,7 @@
|
||||||
|
|
||||||
if ( ALLOC_ARRAY( cmap2->subHeaders,
|
if ( ALLOC_ARRAY( cmap2->subHeaders,
|
||||||
num_SH + 1,
|
num_SH + 1,
|
||||||
TT_CMap2SubHeader ) ||
|
TT_CMap2SubHeaderRec ) ||
|
||||||
ACCESS_Frame( ( num_SH + 1 ) * 8L ) )
|
ACCESS_Frame( ( num_SH + 1 ) * 8L ) )
|
||||||
{
|
{
|
||||||
FREE( cmap2->subHeaderKeys );
|
FREE( cmap2->subHeaderKeys );
|
||||||
|
@ -246,7 +246,7 @@
|
||||||
|
|
||||||
if ( ALLOC_ARRAY( cmap4->segments,
|
if ( ALLOC_ARRAY( cmap4->segments,
|
||||||
num_Seg,
|
num_Seg,
|
||||||
TT_CMap4Segment ) ||
|
TT_CMap4SegmentRec ) ||
|
||||||
ACCESS_Frame( ( num_Seg * 4 + 1 ) * 2L ) )
|
ACCESS_Frame( ( num_Seg * 4 + 1 ) * 2L ) )
|
||||||
goto Fail;
|
goto Fail;
|
||||||
|
|
||||||
|
@ -338,7 +338,7 @@
|
||||||
|
|
||||||
n = cmap8_12->nGroups;
|
n = cmap8_12->nGroups;
|
||||||
|
|
||||||
if ( ALLOC_ARRAY( cmap8_12->groups, n, TT_CMapGroup ) ||
|
if ( ALLOC_ARRAY( cmap8_12->groups, n, TT_CMapGroupRec ) ||
|
||||||
ACCESS_Frame( n * 3 * 4L ) )
|
ACCESS_Frame( n * 3 * 4L ) )
|
||||||
goto Fail;
|
goto Fail;
|
||||||
|
|
||||||
|
@ -416,7 +416,7 @@
|
||||||
/* */
|
/* */
|
||||||
FT_LOCAL_DEF( FT_Error )
|
FT_LOCAL_DEF( FT_Error )
|
||||||
TT_CharMap_Free( TT_Face face,
|
TT_CharMap_Free( TT_Face face,
|
||||||
TT_CMapTable* cmap )
|
TT_CMapTable cmap )
|
||||||
{
|
{
|
||||||
FT_Memory memory;
|
FT_Memory memory;
|
||||||
|
|
||||||
|
@ -488,10 +488,10 @@
|
||||||
/* Glyph index into the glyphs array. 0 if the glyph does not exist. */
|
/* Glyph index into the glyphs array. 0 if the glyph does not exist. */
|
||||||
/* */
|
/* */
|
||||||
FT_CALLBACK_DEF( FT_UInt )
|
FT_CALLBACK_DEF( FT_UInt )
|
||||||
code_to_index0( TT_CMapTable* cmap,
|
code_to_index0( TT_CMapTable cmap,
|
||||||
FT_ULong charCode )
|
FT_ULong charCode )
|
||||||
{
|
{
|
||||||
TT_CMap0* cmap0 = &cmap->c.cmap0;
|
TT_CMap0 cmap0 = &cmap->c.cmap0;
|
||||||
|
|
||||||
|
|
||||||
return ( charCode <= 0xFF ? cmap0->glyphIdArray[charCode] : 0 );
|
return ( charCode <= 0xFF ? cmap0->glyphIdArray[charCode] : 0 );
|
||||||
|
@ -516,10 +516,10 @@
|
||||||
/* Next char code. 0 if no higher one is encoded. */
|
/* Next char code. 0 if no higher one is encoded. */
|
||||||
/* */
|
/* */
|
||||||
FT_CALLBACK_DEF( FT_ULong )
|
FT_CALLBACK_DEF( FT_ULong )
|
||||||
code_to_next0( TT_CMapTable* cmap,
|
code_to_next0( TT_CMapTable cmap,
|
||||||
FT_ULong charCode )
|
FT_ULong charCode )
|
||||||
{
|
{
|
||||||
TT_CMap0* cmap0 = &cmap->c.cmap0;
|
TT_CMap0 cmap0 = &cmap->c.cmap0;
|
||||||
|
|
||||||
|
|
||||||
while ( ++charCode <= 0xFF )
|
while ( ++charCode <= 0xFF )
|
||||||
|
@ -545,14 +545,14 @@
|
||||||
/* Glyph index into the glyphs array. 0 if the glyph does not exist. */
|
/* Glyph index into the glyphs array. 0 if the glyph does not exist. */
|
||||||
/* */
|
/* */
|
||||||
FT_CALLBACK_DEF( FT_UInt )
|
FT_CALLBACK_DEF( FT_UInt )
|
||||||
code_to_index2( TT_CMapTable* cmap,
|
code_to_index2( TT_CMapTable cmap,
|
||||||
FT_ULong charCode )
|
FT_ULong charCode )
|
||||||
{
|
{
|
||||||
FT_UInt result, index1, offset;
|
FT_UInt result, index1, offset;
|
||||||
FT_UInt char_lo;
|
FT_UInt char_lo;
|
||||||
FT_ULong char_hi;
|
FT_ULong char_hi;
|
||||||
TT_CMap2SubHeader* sh2;
|
TT_CMap2SubHeader sh2;
|
||||||
TT_CMap2* cmap2;
|
TT_CMap2 cmap2;
|
||||||
|
|
||||||
|
|
||||||
cmap2 = &cmap->c.cmap2;
|
cmap2 = &cmap->c.cmap2;
|
||||||
|
@ -610,14 +610,14 @@
|
||||||
/* Next encoded character. 0 if none exists. */
|
/* Next encoded character. 0 if none exists. */
|
||||||
/* */
|
/* */
|
||||||
FT_CALLBACK_DEF( FT_ULong )
|
FT_CALLBACK_DEF( FT_ULong )
|
||||||
code_to_next2( TT_CMapTable* cmap,
|
code_to_next2( TT_CMapTable cmap,
|
||||||
FT_ULong charCode )
|
FT_ULong charCode )
|
||||||
{
|
{
|
||||||
FT_UInt index1, offset;
|
FT_UInt index1, offset;
|
||||||
FT_UInt char_lo;
|
FT_UInt char_lo;
|
||||||
FT_ULong char_hi;
|
FT_ULong char_hi;
|
||||||
TT_CMap2SubHeader* sh2;
|
TT_CMap2SubHeader sh2;
|
||||||
TT_CMap2* cmap2;
|
TT_CMap2 cmap2;
|
||||||
|
|
||||||
|
|
||||||
cmap2 = &cmap->c.cmap2;
|
cmap2 = &cmap->c.cmap2;
|
||||||
|
@ -693,12 +693,12 @@
|
||||||
/* Glyph index into the glyphs array. 0 if the glyph does not exist. */
|
/* Glyph index into the glyphs array. 0 if the glyph does not exist. */
|
||||||
/* */
|
/* */
|
||||||
FT_CALLBACK_DEF( FT_UInt )
|
FT_CALLBACK_DEF( FT_UInt )
|
||||||
code_to_index4( TT_CMapTable* cmap,
|
code_to_index4( TT_CMapTable cmap,
|
||||||
FT_ULong charCode )
|
FT_ULong charCode )
|
||||||
{
|
{
|
||||||
FT_UInt result, index1, segCount;
|
FT_UInt result, index1, segCount;
|
||||||
TT_CMap4* cmap4;
|
TT_CMap4 cmap4;
|
||||||
TT_CMap4Segment *seg4, *limit;
|
TT_CMap4SegmentRec *seg4, *limit;
|
||||||
|
|
||||||
|
|
||||||
cmap4 = &cmap->c.cmap4;
|
cmap4 = &cmap->c.cmap4;
|
||||||
|
@ -777,12 +777,12 @@
|
||||||
/* Next encoded character. 0 if none exists. */
|
/* Next encoded character. 0 if none exists. */
|
||||||
/* */
|
/* */
|
||||||
FT_CALLBACK_DEF( FT_ULong )
|
FT_CALLBACK_DEF( FT_ULong )
|
||||||
code_to_next4( TT_CMapTable* cmap,
|
code_to_next4( TT_CMapTable cmap,
|
||||||
FT_ULong charCode )
|
FT_ULong charCode )
|
||||||
{
|
{
|
||||||
FT_UInt index1, segCount;
|
FT_UInt index1, segCount;
|
||||||
TT_CMap4* cmap4;
|
TT_CMap4 cmap4;
|
||||||
TT_CMap4Segment *seg4, *limit;
|
TT_CMap4SegmentRec *seg4, *limit;
|
||||||
|
|
||||||
|
|
||||||
cmap4 = &cmap->c.cmap4;
|
cmap4 = &cmap->c.cmap4;
|
||||||
|
@ -844,10 +844,10 @@
|
||||||
/* Glyph index into the glyphs array. 0 if the glyph does not exist. */
|
/* Glyph index into the glyphs array. 0 if the glyph does not exist. */
|
||||||
/* */
|
/* */
|
||||||
FT_CALLBACK_DEF( FT_UInt )
|
FT_CALLBACK_DEF( FT_UInt )
|
||||||
code_to_index6( TT_CMapTable* cmap,
|
code_to_index6( TT_CMapTable cmap,
|
||||||
FT_ULong charCode )
|
FT_ULong charCode )
|
||||||
{
|
{
|
||||||
TT_CMap6* cmap6;
|
TT_CMap6 cmap6;
|
||||||
FT_UInt result = 0;
|
FT_UInt result = 0;
|
||||||
|
|
||||||
|
|
||||||
|
@ -877,10 +877,10 @@
|
||||||
/* Next encoded character. 0 if none exists. */
|
/* Next encoded character. 0 if none exists. */
|
||||||
/* */
|
/* */
|
||||||
FT_CALLBACK_DEF( FT_ULong )
|
FT_CALLBACK_DEF( FT_ULong )
|
||||||
code_to_next6( TT_CMapTable* cmap,
|
code_to_next6( TT_CMapTable cmap,
|
||||||
FT_ULong charCode )
|
FT_ULong charCode )
|
||||||
{
|
{
|
||||||
TT_CMap6* cmap6;
|
TT_CMap6 cmap6;
|
||||||
|
|
||||||
|
|
||||||
charCode++;
|
charCode++;
|
||||||
|
@ -920,11 +920,11 @@
|
||||||
/* Glyph index into the glyphs array. 0 if the glyph does not exist. */
|
/* Glyph index into the glyphs array. 0 if the glyph does not exist. */
|
||||||
/* */
|
/* */
|
||||||
FT_CALLBACK_DEF( FT_UInt )
|
FT_CALLBACK_DEF( FT_UInt )
|
||||||
code_to_index8_12( TT_CMapTable* cmap,
|
code_to_index8_12( TT_CMapTable cmap,
|
||||||
FT_ULong charCode )
|
FT_ULong charCode )
|
||||||
{
|
{
|
||||||
TT_CMap8_12* cmap8_12;
|
TT_CMap8_12 cmap8_12;
|
||||||
TT_CMapGroup *group, *limit;
|
TT_CMapGroupRec *group, *limit;
|
||||||
|
|
||||||
|
|
||||||
cmap8_12 = &cmap->c.cmap8_12;
|
cmap8_12 = &cmap->c.cmap8_12;
|
||||||
|
@ -984,11 +984,11 @@
|
||||||
/* Next encoded character. 0 if none exists. */
|
/* Next encoded character. 0 if none exists. */
|
||||||
/* */
|
/* */
|
||||||
FT_CALLBACK_DEF( FT_ULong )
|
FT_CALLBACK_DEF( FT_ULong )
|
||||||
code_to_next8_12( TT_CMapTable* cmap,
|
code_to_next8_12( TT_CMapTable cmap,
|
||||||
FT_ULong charCode )
|
FT_ULong charCode )
|
||||||
{
|
{
|
||||||
TT_CMap8_12* cmap8_12;
|
TT_CMap8_12 cmap8_12;
|
||||||
TT_CMapGroup *group, *limit;
|
TT_CMapGroupRec *group, *limit;
|
||||||
|
|
||||||
|
|
||||||
charCode++;
|
charCode++;
|
||||||
|
@ -1030,10 +1030,10 @@
|
||||||
/* Glyph index into the glyphs array. 0 if the glyph does not exist. */
|
/* Glyph index into the glyphs array. 0 if the glyph does not exist. */
|
||||||
/* */
|
/* */
|
||||||
FT_CALLBACK_DEF( FT_UInt )
|
FT_CALLBACK_DEF( FT_UInt )
|
||||||
code_to_index10( TT_CMapTable* cmap,
|
code_to_index10( TT_CMapTable cmap,
|
||||||
FT_ULong charCode )
|
FT_ULong charCode )
|
||||||
{
|
{
|
||||||
TT_CMap10* cmap10;
|
TT_CMap10 cmap10;
|
||||||
FT_UInt result = 0;
|
FT_UInt result = 0;
|
||||||
|
|
||||||
|
|
||||||
|
@ -1067,10 +1067,10 @@
|
||||||
/* Next encoded character. 0 if none exists. */
|
/* Next encoded character. 0 if none exists. */
|
||||||
/* */
|
/* */
|
||||||
FT_CALLBACK_DEF( FT_ULong )
|
FT_CALLBACK_DEF( FT_ULong )
|
||||||
code_to_next10( TT_CMapTable* cmap,
|
code_to_next10( TT_CMapTable cmap,
|
||||||
FT_ULong charCode )
|
FT_ULong charCode )
|
||||||
{
|
{
|
||||||
TT_CMap10* cmap10;
|
TT_CMap10 cmap10;
|
||||||
|
|
||||||
|
|
||||||
charCode++;
|
charCode++;
|
||||||
|
|
|
@ -29,12 +29,12 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
FT_LOCAL( FT_Error )
|
FT_LOCAL( FT_Error )
|
||||||
TT_CharMap_Load( TT_Face face,
|
TT_CharMap_Load( TT_Face face,
|
||||||
TT_CMapTable* cmap,
|
TT_CMapTable cmap,
|
||||||
FT_Stream input );
|
FT_Stream input );
|
||||||
|
|
||||||
FT_LOCAL( FT_Error )
|
FT_LOCAL( FT_Error )
|
||||||
TT_CharMap_Free( TT_Face face,
|
TT_CharMap_Free( TT_Face face,
|
||||||
TT_CMapTable* cmap );
|
TT_CMapTable cmap );
|
||||||
|
|
||||||
|
|
||||||
FT_END_HEADER
|
FT_END_HEADER
|
||||||
|
|
|
@ -53,12 +53,12 @@
|
||||||
/* <Return> */
|
/* <Return> */
|
||||||
/* A pointer to the table directory entry. 0 if not found. */
|
/* A pointer to the table directory entry. 0 if not found. */
|
||||||
/* */
|
/* */
|
||||||
FT_LOCAL_DEF( TT_Table* )
|
FT_LOCAL_DEF( TT_Table )
|
||||||
TT_LookUp_Table( TT_Face face,
|
TT_LookUp_Table( TT_Face face,
|
||||||
FT_ULong tag )
|
FT_ULong tag )
|
||||||
{
|
{
|
||||||
TT_Table* entry;
|
TT_Table entry;
|
||||||
TT_Table* limit;
|
TT_Table limit;
|
||||||
|
|
||||||
|
|
||||||
FT_TRACE3(( "TT_LookUp_Table: %08p, `%c%c%c%c' -- ",
|
FT_TRACE3(( "TT_LookUp_Table: %08p, `%c%c%c%c' -- ",
|
||||||
|
@ -110,7 +110,7 @@
|
||||||
FT_Stream stream,
|
FT_Stream stream,
|
||||||
FT_ULong* length )
|
FT_ULong* length )
|
||||||
{
|
{
|
||||||
TT_Table* table;
|
TT_Table table;
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
|
|
||||||
|
|
||||||
|
@ -134,7 +134,7 @@
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Function> */
|
/* <Function> */
|
||||||
/* TT_Load_SFNT_Header */
|
/* TT_Load_SFNT_HeaderRec */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* Loads the header of a SFNT font file. Supports collections. */
|
/* Loads the header of a SFNT font file. Supports collections. */
|
||||||
|
@ -160,10 +160,10 @@
|
||||||
/* values of `search_range', `entry_selector', and `range_shift'. */
|
/* values of `search_range', `entry_selector', and `range_shift'. */
|
||||||
/* */
|
/* */
|
||||||
FT_LOCAL_DEF( FT_Error )
|
FT_LOCAL_DEF( FT_Error )
|
||||||
TT_Load_SFNT_Header( TT_Face face,
|
TT_Load_SFNT_HeaderRec( TT_Face face,
|
||||||
FT_Stream stream,
|
FT_Stream stream,
|
||||||
FT_Long face_index,
|
FT_Long face_index,
|
||||||
SFNT_Header* sfnt )
|
SFNT_Header sfnt )
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
FT_ULong format_tag;
|
FT_ULong format_tag;
|
||||||
|
@ -172,7 +172,7 @@
|
||||||
const FT_Frame_Field sfnt_header_fields[] =
|
const FT_Frame_Field sfnt_header_fields[] =
|
||||||
{
|
{
|
||||||
#undef FT_STRUCTURE
|
#undef FT_STRUCTURE
|
||||||
#define FT_STRUCTURE SFNT_Header
|
#define FT_STRUCTURE SFNT_HeaderRec
|
||||||
|
|
||||||
FT_FRAME_START( 8 ),
|
FT_FRAME_START( 8 ),
|
||||||
FT_FRAME_USHORT( num_tables ),
|
FT_FRAME_USHORT( num_tables ),
|
||||||
|
@ -185,7 +185,7 @@
|
||||||
const FT_Frame_Field ttc_header_fields[] =
|
const FT_Frame_Field ttc_header_fields[] =
|
||||||
{
|
{
|
||||||
#undef FT_STRUCTURE
|
#undef FT_STRUCTURE
|
||||||
#define FT_STRUCTURE TTC_Header
|
#define FT_STRUCTURE TTC_HeaderRec
|
||||||
|
|
||||||
FT_FRAME_START( 8 ),
|
FT_FRAME_START( 8 ),
|
||||||
FT_FRAME_LONG( version ),
|
FT_FRAME_LONG( version ),
|
||||||
|
@ -193,7 +193,7 @@
|
||||||
FT_FRAME_END };
|
FT_FRAME_END };
|
||||||
|
|
||||||
|
|
||||||
FT_TRACE2(( "TT_Load_SFNT_Header: %08p, %ld\n",
|
FT_TRACE2(( "TT_Load_SFNT_HeaderRec: %08p, %ld\n",
|
||||||
face, face_index ));
|
face, face_index ));
|
||||||
|
|
||||||
face->ttc_header.tag = 0;
|
face->ttc_header.tag = 0;
|
||||||
|
@ -213,7 +213,7 @@
|
||||||
FT_Int n;
|
FT_Int n;
|
||||||
|
|
||||||
|
|
||||||
FT_TRACE3(( "TT_Load_SFNT_Header: file is a collection\n" ));
|
FT_TRACE3(( "TT_Load_SFNT_HeaderRec: file is a collection\n" ));
|
||||||
|
|
||||||
/* it's a TrueType collection, i.e. a file containing several */
|
/* it's a TrueType collection, i.e. a file containing several */
|
||||||
/* font files. Read the font directory now */
|
/* font files. Read the font directory now */
|
||||||
|
@ -263,7 +263,7 @@
|
||||||
entry_selector > num_tables ||
|
entry_selector > num_tables ||
|
||||||
entry_selector * 2 <= num_tables )
|
entry_selector * 2 <= num_tables )
|
||||||
{
|
{
|
||||||
FT_TRACE2(( "TT_Load_SFNT_Header: file is not SFNT!\n" ));
|
FT_TRACE2(( "TT_Load_SFNT_HeaderRec: file is not SFNT!\n" ));
|
||||||
error = SFNT_Err_Unknown_File_Format;
|
error = SFNT_Err_Unknown_File_Format;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -297,12 +297,12 @@
|
||||||
FT_LOCAL_DEF( FT_Error )
|
FT_LOCAL_DEF( FT_Error )
|
||||||
TT_Load_Directory( TT_Face face,
|
TT_Load_Directory( TT_Face face,
|
||||||
FT_Stream stream,
|
FT_Stream stream,
|
||||||
SFNT_Header* sfnt )
|
SFNT_Header sfnt )
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
FT_Memory memory = stream->memory;
|
FT_Memory memory = stream->memory;
|
||||||
|
|
||||||
TT_Table *entry, *limit;
|
TT_TableRec *entry, *limit;
|
||||||
|
|
||||||
|
|
||||||
FT_TRACE2(( "TT_Load_Directory: %08p\n", face ));
|
FT_TRACE2(( "TT_Load_Directory: %08p\n", face ));
|
||||||
|
@ -314,7 +314,7 @@
|
||||||
|
|
||||||
if ( ALLOC_ARRAY( face->dir_tables,
|
if ( ALLOC_ARRAY( face->dir_tables,
|
||||||
face->num_tables,
|
face->num_tables,
|
||||||
TT_Table ) )
|
TT_TableRec ) )
|
||||||
goto Exit;
|
goto Exit;
|
||||||
|
|
||||||
if ( ACCESS_Frame( face->num_tables * 16L ) )
|
if ( ACCESS_Frame( face->num_tables * 16L ) )
|
||||||
|
@ -397,7 +397,7 @@
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
FT_Stream stream;
|
FT_Stream stream;
|
||||||
TT_Table* table;
|
TT_Table table;
|
||||||
FT_ULong size;
|
FT_ULong size;
|
||||||
|
|
||||||
|
|
||||||
|
@ -687,7 +687,7 @@
|
||||||
FT_ULong table_len;
|
FT_ULong table_len;
|
||||||
FT_Long num_shorts, num_longs, num_shorts_checked;
|
FT_Long num_shorts, num_longs, num_shorts_checked;
|
||||||
|
|
||||||
TT_LongMetrics** longs;
|
TT_LongMetrics * longs;
|
||||||
TT_ShortMetrics** shorts;
|
TT_ShortMetrics** shorts;
|
||||||
|
|
||||||
|
|
||||||
|
@ -715,7 +715,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
num_longs = face->vertical.number_Of_VMetrics;
|
num_longs = face->vertical.number_Of_VMetrics;
|
||||||
longs = (TT_LongMetrics**)&face->vertical.long_metrics;
|
longs = (TT_LongMetrics *)&face->vertical.long_metrics;
|
||||||
shorts = (TT_ShortMetrics**)&face->vertical.short_metrics;
|
shorts = (TT_ShortMetrics**)&face->vertical.short_metrics;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -729,7 +729,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
num_longs = face->horizontal.number_Of_HMetrics;
|
num_longs = face->horizontal.number_Of_HMetrics;
|
||||||
longs = (TT_LongMetrics**)&face->horizontal.long_metrics;
|
longs = (TT_LongMetrics *)&face->horizontal.long_metrics;
|
||||||
shorts = (TT_ShortMetrics**)&face->horizontal.short_metrics;
|
shorts = (TT_ShortMetrics**)&face->horizontal.short_metrics;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -749,7 +749,7 @@
|
||||||
goto Exit;
|
goto Exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( ALLOC_ARRAY( *longs, num_longs, TT_LongMetrics ) ||
|
if ( ALLOC_ARRAY( *longs, num_longs, TT_LongMetricsRec ) ||
|
||||||
ALLOC_ARRAY( *shorts, num_shorts, TT_ShortMetrics ) )
|
ALLOC_ARRAY( *shorts, num_shorts, TT_ShortMetrics ) )
|
||||||
goto Exit;
|
goto Exit;
|
||||||
|
|
||||||
|
@ -757,8 +757,8 @@
|
||||||
goto Exit;
|
goto Exit;
|
||||||
|
|
||||||
{
|
{
|
||||||
TT_LongMetrics* cur = *longs;
|
TT_LongMetrics cur = *longs;
|
||||||
TT_LongMetrics* limit = cur + num_longs;
|
TT_LongMetrics limit = cur + num_longs;
|
||||||
|
|
||||||
|
|
||||||
for ( ; cur < limit; cur++ )
|
for ( ; cur < limit; cur++ )
|
||||||
|
@ -926,12 +926,12 @@
|
||||||
FT_ULong storageOffset, storageSize;
|
FT_ULong storageOffset, storageSize;
|
||||||
FT_Byte* storage;
|
FT_Byte* storage;
|
||||||
|
|
||||||
TT_NameTable* names;
|
TT_NameTable names;
|
||||||
|
|
||||||
const FT_Frame_Field name_table_fields[] =
|
const FT_Frame_Field name_table_fields[] =
|
||||||
{
|
{
|
||||||
#undef FT_STRUCTURE
|
#undef FT_STRUCTURE
|
||||||
#define FT_STRUCTURE TT_NameTable
|
#define FT_STRUCTURE TT_NameTableRec
|
||||||
|
|
||||||
FT_FRAME_START( 6 ),
|
FT_FRAME_START( 6 ),
|
||||||
FT_FRAME_USHORT( format ),
|
FT_FRAME_USHORT( format ),
|
||||||
|
@ -943,7 +943,7 @@
|
||||||
const FT_Frame_Field name_record_fields[] =
|
const FT_Frame_Field name_record_fields[] =
|
||||||
{
|
{
|
||||||
#undef FT_STRUCTURE
|
#undef FT_STRUCTURE
|
||||||
#define FT_STRUCTURE TT_NameRec
|
#define FT_STRUCTURE TT_NameEntryRec
|
||||||
|
|
||||||
/* no FT_FRAME_START */
|
/* no FT_FRAME_START */
|
||||||
FT_FRAME_USHORT( platformID ),
|
FT_FRAME_USHORT( platformID ),
|
||||||
|
@ -988,7 +988,7 @@
|
||||||
|
|
||||||
/* Allocate the array of name records. */
|
/* Allocate the array of name records. */
|
||||||
if ( ALLOC( names->names,
|
if ( ALLOC( names->names,
|
||||||
names->numNameRecords*sizeof(TT_NameRec) + storageSize ) ||
|
names->numNameRecords*sizeof(TT_NameEntryRec) + storageSize ) ||
|
||||||
ACCESS_Frame( names->numNameRecords * 12L ) )
|
ACCESS_Frame( names->numNameRecords * 12L ) )
|
||||||
goto Exit;
|
goto Exit;
|
||||||
|
|
||||||
|
@ -997,8 +997,8 @@
|
||||||
/* Load the name records and determine how much storage is needed */
|
/* Load the name records and determine how much storage is needed */
|
||||||
/* to hold the strings themselves. */
|
/* to hold the strings themselves. */
|
||||||
{
|
{
|
||||||
TT_NameRec* cur = names->names;
|
TT_NameEntryRec* cur = names->names;
|
||||||
TT_NameRec* limit = cur + names->numNameRecords;
|
TT_NameEntryRec* limit = cur + names->numNameRecords;
|
||||||
|
|
||||||
|
|
||||||
for ( ; cur < limit; cur ++ )
|
for ( ; cur < limit; cur ++ )
|
||||||
|
@ -1033,8 +1033,8 @@
|
||||||
|
|
||||||
/* Print Name Record Table in case of debugging */
|
/* Print Name Record Table in case of debugging */
|
||||||
{
|
{
|
||||||
TT_NameRec* cur = names->names;
|
TT_NameEntryRec* cur = names->names;
|
||||||
TT_NameRec* limit = cur + names->numNameRecords;
|
TT_NameEntryRec* limit = cur + names->numNameRecords;
|
||||||
|
|
||||||
|
|
||||||
for ( ; cur < limit; cur++ )
|
for ( ; cur < limit; cur++ )
|
||||||
|
@ -1093,7 +1093,7 @@
|
||||||
TT_Free_Names( TT_Face face )
|
TT_Free_Names( TT_Face face )
|
||||||
{
|
{
|
||||||
FT_Memory memory = face->root.driver->root.memory;
|
FT_Memory memory = face->root.driver->root.memory;
|
||||||
TT_NameTable* names = &face->name_table;
|
TT_NameTable names = &face->name_table;
|
||||||
|
|
||||||
|
|
||||||
/* free strings table */
|
/* free strings table */
|
||||||
|
@ -1128,15 +1128,15 @@
|
||||||
TT_Load_CMap( TT_Face face,
|
TT_Load_CMap( TT_Face face,
|
||||||
FT_Stream stream )
|
FT_Stream stream )
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
FT_Memory memory = stream->memory;
|
FT_Memory memory = stream->memory;
|
||||||
FT_Long table_start;
|
FT_Long table_start;
|
||||||
TT_CMapDir cmap_dir;
|
TT_CMapDirRec cmap_dir;
|
||||||
|
|
||||||
const FT_Frame_Field cmap_fields[] =
|
const FT_Frame_Field cmap_fields[] =
|
||||||
{
|
{
|
||||||
#undef FT_STRUCTURE
|
#undef FT_STRUCTURE
|
||||||
#define FT_STRUCTURE TT_CMapDir
|
#define FT_STRUCTURE TT_CMapDirRec
|
||||||
|
|
||||||
FT_FRAME_START( 4 ),
|
FT_FRAME_START( 4 ),
|
||||||
FT_FRAME_USHORT( tableVersionNumber ),
|
FT_FRAME_USHORT( tableVersionNumber ),
|
||||||
|
@ -1147,7 +1147,7 @@
|
||||||
const FT_Frame_Field cmap_rec_fields[] =
|
const FT_Frame_Field cmap_rec_fields[] =
|
||||||
{
|
{
|
||||||
#undef FT_STRUCTURE
|
#undef FT_STRUCTURE
|
||||||
#define FT_STRUCTURE TT_CMapTable
|
#define FT_STRUCTURE TT_CMapTableRec
|
||||||
|
|
||||||
FT_FRAME_START( 4 ),
|
FT_FRAME_START( 4 ),
|
||||||
FT_FRAME_USHORT( format ),
|
FT_FRAME_USHORT( format ),
|
||||||
|
@ -1188,7 +1188,7 @@
|
||||||
|
|
||||||
for ( ; charmap < limit; charmap++ )
|
for ( ; charmap < limit; charmap++ )
|
||||||
{
|
{
|
||||||
TT_CMapTable* cmap;
|
TT_CMapTable cmap;
|
||||||
|
|
||||||
|
|
||||||
charmap->root.face = (FT_Face)face;
|
charmap->root.face = (FT_Face)face;
|
||||||
|
@ -1205,7 +1205,7 @@
|
||||||
/* now read the rest of each table */
|
/* now read the rest of each table */
|
||||||
for ( charmap = face->charmaps; charmap < limit; charmap++ )
|
for ( charmap = face->charmaps; charmap < limit; charmap++ )
|
||||||
{
|
{
|
||||||
TT_CMapTable* cmap = &charmap->cmap;
|
TT_CMapTable cmap = &charmap->cmap;
|
||||||
|
|
||||||
|
|
||||||
if ( FILE_Seek( table_start + (FT_Long)cmap->offset ) ||
|
if ( FILE_Seek( table_start + (FT_Long)cmap->offset ) ||
|
||||||
|
@ -1513,7 +1513,7 @@
|
||||||
FT_Memory memory = stream->memory;
|
FT_Memory memory = stream->memory;
|
||||||
|
|
||||||
FT_UInt j,num_ranges;
|
FT_UInt j,num_ranges;
|
||||||
TT_GaspRange* gaspranges;
|
TT_GaspRange gaspranges;
|
||||||
|
|
||||||
|
|
||||||
FT_TRACE2(( "TT_Load_Gasp: %08p\n", face ));
|
FT_TRACE2(( "TT_Load_Gasp: %08p\n", face ));
|
||||||
|
@ -1534,7 +1534,7 @@
|
||||||
num_ranges = face->gasp.numRanges;
|
num_ranges = face->gasp.numRanges;
|
||||||
FT_TRACE3(( "number of ranges = %d\n", num_ranges ));
|
FT_TRACE3(( "number of ranges = %d\n", num_ranges ));
|
||||||
|
|
||||||
if ( ALLOC_ARRAY( gaspranges, num_ranges, TT_GaspRange ) ||
|
if ( ALLOC_ARRAY( gaspranges, num_ranges, TT_GaspRangeRec ) ||
|
||||||
ACCESS_Frame( num_ranges * 4L ) )
|
ACCESS_Frame( num_ranges * 4L ) )
|
||||||
goto Exit;
|
goto Exit;
|
||||||
|
|
||||||
|
@ -1623,8 +1623,8 @@
|
||||||
if ( coverage == 0x0001 )
|
if ( coverage == 0x0001 )
|
||||||
{
|
{
|
||||||
FT_UInt num_pairs;
|
FT_UInt num_pairs;
|
||||||
TT_Kern_0_Pair* pair;
|
TT_Kern0_Pair pair;
|
||||||
TT_Kern_0_Pair* limit;
|
TT_Kern0_Pair limit;
|
||||||
|
|
||||||
|
|
||||||
/* found a horizontal format 0 kerning table! */
|
/* found a horizontal format 0 kerning table! */
|
||||||
|
@ -1638,7 +1638,7 @@
|
||||||
FORGET_Frame();
|
FORGET_Frame();
|
||||||
|
|
||||||
/* allocate array of kerning pairs */
|
/* allocate array of kerning pairs */
|
||||||
if ( ALLOC_ARRAY( face->kern_pairs, num_pairs, TT_Kern_0_Pair ) ||
|
if ( ALLOC_ARRAY( face->kern_pairs, num_pairs, TT_Kern0_PairRec ) ||
|
||||||
ACCESS_Frame( 6L * num_pairs ) )
|
ACCESS_Frame( 6L * num_pairs ) )
|
||||||
goto Exit;
|
goto Exit;
|
||||||
|
|
||||||
|
@ -1660,7 +1660,7 @@
|
||||||
/* fonts have unsorted tables!) */
|
/* fonts have unsorted tables!) */
|
||||||
{
|
{
|
||||||
FT_UInt i;
|
FT_UInt i;
|
||||||
TT_Kern_0_Pair* pair0;
|
TT_Kern0_Pair pair0;
|
||||||
|
|
||||||
|
|
||||||
pair0 = face->kern_pairs;
|
pair0 = face->kern_pairs;
|
||||||
|
@ -1670,7 +1670,7 @@
|
||||||
if ( tt_kern_pair_compare( pair0, pair0 + 1 ) != -1 )
|
if ( tt_kern_pair_compare( pair0, pair0 + 1 ) != -1 )
|
||||||
{
|
{
|
||||||
qsort( (void*)face->kern_pairs, (int)num_pairs,
|
qsort( (void*)face->kern_pairs, (int)num_pairs,
|
||||||
sizeof ( TT_Kern_0_Pair ), tt_kern_pair_compare );
|
sizeof ( TT_Kern0_PairRec ), tt_kern_pair_compare );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1700,8 +1700,8 @@
|
||||||
tt_kern_pair_compare( const void* a,
|
tt_kern_pair_compare( const void* a,
|
||||||
const void* b )
|
const void* b )
|
||||||
{
|
{
|
||||||
TT_Kern_0_Pair* pair1 = (TT_Kern_0_Pair*)a;
|
TT_Kern0_Pair pair1 = (TT_Kern0_Pair)a;
|
||||||
TT_Kern_0_Pair* pair2 = (TT_Kern_0_Pair*)b;
|
TT_Kern0_Pair pair2 = (TT_Kern0_Pair)b;
|
||||||
|
|
||||||
FT_ULong index1 = TT_KERN_INDEX( pair1->left, pair1->right );
|
FT_ULong index1 = TT_KERN_INDEX( pair1->left, pair1->right );
|
||||||
FT_ULong index2 = TT_KERN_INDEX( pair2->left, pair2->right );
|
FT_ULong index2 = TT_KERN_INDEX( pair2->left, pair2->right );
|
||||||
|
@ -1736,7 +1736,7 @@
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
FT_Memory memory = stream->memory;
|
FT_Memory memory = stream->memory;
|
||||||
|
|
||||||
TT_Hdmx* hdmx = &face->hdmx;
|
TT_Hdmx hdmx = &face->hdmx;
|
||||||
FT_Long num_glyphs;
|
FT_Long num_glyphs;
|
||||||
FT_Long record_size;
|
FT_Long record_size;
|
||||||
|
|
||||||
|
@ -1763,15 +1763,15 @@
|
||||||
if ( hdmx->version != 0 )
|
if ( hdmx->version != 0 )
|
||||||
goto Exit;
|
goto Exit;
|
||||||
|
|
||||||
if ( ALLOC_ARRAY( hdmx->records, hdmx->num_records, TT_HdmxRec ) )
|
if ( ALLOC_ARRAY( hdmx->records, hdmx->num_records, TT_HdmxEntryRec ) )
|
||||||
goto Exit;
|
goto Exit;
|
||||||
|
|
||||||
num_glyphs = face->root.num_glyphs;
|
num_glyphs = face->root.num_glyphs;
|
||||||
record_size -= num_glyphs + 2;
|
record_size -= num_glyphs + 2;
|
||||||
|
|
||||||
{
|
{
|
||||||
TT_HdmxRec* cur = hdmx->records;
|
TT_HdmxEntry cur = hdmx->records;
|
||||||
TT_HdmxRec* limit = cur + hdmx->num_records;
|
TT_HdmxEntry limit = cur + hdmx->num_records;
|
||||||
|
|
||||||
|
|
||||||
for ( ; cur < limit; cur++ )
|
for ( ; cur < limit; cur++ )
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
FT_BEGIN_HEADER
|
FT_BEGIN_HEADER
|
||||||
|
|
||||||
|
|
||||||
FT_LOCAL( TT_Table* )
|
FT_LOCAL( TT_Table )
|
||||||
TT_LookUp_Table( TT_Face face,
|
TT_LookUp_Table( TT_Face face,
|
||||||
FT_ULong tag );
|
FT_ULong tag );
|
||||||
|
|
||||||
|
@ -41,15 +41,15 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
|
|
||||||
FT_LOCAL( FT_Error )
|
FT_LOCAL( FT_Error )
|
||||||
TT_Load_SFNT_Header( TT_Face face,
|
TT_Load_SFNT_HeaderRec( TT_Face face,
|
||||||
FT_Stream stream,
|
FT_Stream stream,
|
||||||
FT_Long face_index,
|
FT_Long face_index,
|
||||||
SFNT_Header* sfnt );
|
SFNT_Header sfnt );
|
||||||
|
|
||||||
FT_LOCAL( FT_Error )
|
FT_LOCAL( FT_Error )
|
||||||
TT_Load_Directory( TT_Face face,
|
TT_Load_Directory( TT_Face face,
|
||||||
FT_Stream stream,
|
FT_Stream stream,
|
||||||
SFNT_Header* sfnt );
|
SFNT_Header sfnt );
|
||||||
|
|
||||||
FT_LOCAL( FT_Error )
|
FT_LOCAL( FT_Error )
|
||||||
TT_Load_Any( TT_Face face,
|
TT_Load_Any( TT_Face face,
|
||||||
|
|
|
@ -241,7 +241,7 @@
|
||||||
|
|
||||||
/* all right, set table fields and exit successfuly */
|
/* all right, set table fields and exit successfuly */
|
||||||
{
|
{
|
||||||
TT_Post_20* table = &face->postscript_names.names.format_20;
|
TT_Post_20 table = &face->postscript_names.names.format_20;
|
||||||
|
|
||||||
|
|
||||||
table->num_glyphs = (FT_UShort)num_glyphs;
|
table->num_glyphs = (FT_UShort)num_glyphs;
|
||||||
|
@ -316,7 +316,7 @@
|
||||||
|
|
||||||
/* OK, set table fields and exit successfuly */
|
/* OK, set table fields and exit successfuly */
|
||||||
{
|
{
|
||||||
TT_Post_25* table = &face->postscript_names.names.format_25;
|
TT_Post_25 table = &face->postscript_names.names.format_25;
|
||||||
|
|
||||||
|
|
||||||
table->num_glyphs = (FT_UShort)num_glyphs;
|
table->num_glyphs = (FT_UShort)num_glyphs;
|
||||||
|
@ -381,7 +381,7 @@
|
||||||
TT_Free_Post_Names( TT_Face face )
|
TT_Free_Post_Names( TT_Face face )
|
||||||
{
|
{
|
||||||
FT_Memory memory = face->root.memory;
|
FT_Memory memory = face->root.memory;
|
||||||
TT_Post_Names* names = &face->postscript_names;
|
TT_Post_Names names = &face->postscript_names;
|
||||||
|
|
||||||
|
|
||||||
if ( names->loaded )
|
if ( names->loaded )
|
||||||
|
@ -390,7 +390,7 @@
|
||||||
{
|
{
|
||||||
case 0x00020000L:
|
case 0x00020000L:
|
||||||
{
|
{
|
||||||
TT_Post_20* table = &names->names.format_20;
|
TT_Post_20 table = &names->names.format_20;
|
||||||
FT_UShort n;
|
FT_UShort n;
|
||||||
|
|
||||||
|
|
||||||
|
@ -407,7 +407,7 @@
|
||||||
|
|
||||||
case 0x00028000L:
|
case 0x00028000L:
|
||||||
{
|
{
|
||||||
TT_Post_25* table = &names->names.format_25;
|
TT_Post_25 table = &names->names.format_25;
|
||||||
|
|
||||||
|
|
||||||
FREE( table->offsets );
|
FREE( table->offsets );
|
||||||
|
@ -447,7 +447,7 @@
|
||||||
FT_String** PSname )
|
FT_String** PSname )
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
TT_Post_Names* names;
|
TT_Post_Names names;
|
||||||
|
|
||||||
#ifdef FT_CONFIG_OPTION_POSTSCRIPT_NAMES
|
#ifdef FT_CONFIG_OPTION_POSTSCRIPT_NAMES
|
||||||
PSNames_Service psnames;
|
PSNames_Service psnames;
|
||||||
|
@ -480,7 +480,7 @@
|
||||||
|
|
||||||
case 0x00020000L:
|
case 0x00020000L:
|
||||||
{
|
{
|
||||||
TT_Post_20* table = &names->names.format_20;
|
TT_Post_20 table = &names->names.format_20;
|
||||||
|
|
||||||
|
|
||||||
if ( !names->loaded )
|
if ( !names->loaded )
|
||||||
|
@ -505,7 +505,7 @@
|
||||||
|
|
||||||
case 0x00028000L:
|
case 0x00028000L:
|
||||||
{
|
{
|
||||||
TT_Post_25* table = &names->names.format_25;
|
TT_Post_25 table = &names->names.format_25;
|
||||||
|
|
||||||
|
|
||||||
if ( !names->loaded )
|
if ( !names->loaded )
|
||||||
|
|
|
@ -188,7 +188,7 @@
|
||||||
const FT_Frame_Field sbit_metrics_fields[] =
|
const FT_Frame_Field sbit_metrics_fields[] =
|
||||||
{
|
{
|
||||||
#undef FT_STRUCTURE
|
#undef FT_STRUCTURE
|
||||||
#define FT_STRUCTURE TT_SBit_Metrics
|
#define FT_STRUCTURE TT_SBit_MetricsRec
|
||||||
|
|
||||||
FT_FRAME_START( 8 ),
|
FT_FRAME_START( 8 ),
|
||||||
FT_FRAME_BYTE( height ),
|
FT_FRAME_BYTE( height ),
|
||||||
|
@ -222,7 +222,7 @@
|
||||||
/* FreeType error code. 0 means success. */
|
/* FreeType error code. 0 means success. */
|
||||||
/* */
|
/* */
|
||||||
static FT_Error
|
static FT_Error
|
||||||
Load_SBit_Const_Metrics( TT_SBit_Range* range,
|
Load_SBit_Const_Metrics( TT_SBit_Range range,
|
||||||
FT_Stream stream )
|
FT_Stream stream )
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
|
@ -254,7 +254,7 @@
|
||||||
/* FreeType error code. 0 means success. */
|
/* FreeType error code. 0 means success. */
|
||||||
/* */
|
/* */
|
||||||
static FT_Error
|
static FT_Error
|
||||||
Load_SBit_Range_Codes( TT_SBit_Range* range,
|
Load_SBit_Range_Codes( TT_SBit_Range range,
|
||||||
FT_Stream stream,
|
FT_Stream stream,
|
||||||
FT_Bool load_offsets )
|
FT_Bool load_offsets )
|
||||||
{
|
{
|
||||||
|
@ -317,7 +317,7 @@
|
||||||
/* FreeType error code. 0 means success. */
|
/* FreeType error code. 0 means success. */
|
||||||
/* */
|
/* */
|
||||||
static FT_Error
|
static FT_Error
|
||||||
Load_SBit_Range( TT_SBit_Range* range,
|
Load_SBit_Range( TT_SBit_Range range,
|
||||||
FT_Stream stream )
|
FT_Stream stream )
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
|
@ -404,7 +404,7 @@
|
||||||
const FT_Frame_Field sbit_line_metrics_fields[] =
|
const FT_Frame_Field sbit_line_metrics_fields[] =
|
||||||
{
|
{
|
||||||
#undef FT_STRUCTURE
|
#undef FT_STRUCTURE
|
||||||
#define FT_STRUCTURE TT_SBit_Line_Metrics
|
#define FT_STRUCTURE TT_SBit_LineMetricsRec
|
||||||
|
|
||||||
/* no FT_FRAME_START */
|
/* no FT_FRAME_START */
|
||||||
FT_FRAME_CHAR( ascender ),
|
FT_FRAME_CHAR( ascender ),
|
||||||
|
@ -427,7 +427,7 @@
|
||||||
const FT_Frame_Field strike_start_fields[] =
|
const FT_Frame_Field strike_start_fields[] =
|
||||||
{
|
{
|
||||||
#undef FT_STRUCTURE
|
#undef FT_STRUCTURE
|
||||||
#define FT_STRUCTURE TT_SBit_Strike
|
#define FT_STRUCTURE TT_SBit_StrikeRec
|
||||||
|
|
||||||
/* no FT_FRAME_START */
|
/* no FT_FRAME_START */
|
||||||
FT_FRAME_ULONG( ranges_offset ),
|
FT_FRAME_ULONG( ranges_offset ),
|
||||||
|
@ -479,14 +479,14 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
/* allocate the strikes table */
|
/* allocate the strikes table */
|
||||||
if ( ALLOC_ARRAY( face->sbit_strikes, num_strikes, TT_SBit_Strike ) )
|
if ( ALLOC_ARRAY( face->sbit_strikes, num_strikes, TT_SBit_StrikeRec ) )
|
||||||
goto Exit;
|
goto Exit;
|
||||||
|
|
||||||
face->num_sbit_strikes = num_strikes;
|
face->num_sbit_strikes = num_strikes;
|
||||||
|
|
||||||
/* now read each strike table separately */
|
/* now read each strike table separately */
|
||||||
{
|
{
|
||||||
TT_SBit_Strike* strike = face->sbit_strikes;
|
TT_SBit_Strike strike = face->sbit_strikes;
|
||||||
FT_ULong count = num_strikes;
|
FT_ULong count = num_strikes;
|
||||||
|
|
||||||
|
|
||||||
|
@ -510,19 +510,19 @@
|
||||||
|
|
||||||
/* allocate the index ranges for each strike table */
|
/* allocate the index ranges for each strike table */
|
||||||
{
|
{
|
||||||
TT_SBit_Strike* strike = face->sbit_strikes;
|
TT_SBit_Strike strike = face->sbit_strikes;
|
||||||
FT_ULong count = num_strikes;
|
FT_ULong count = num_strikes;
|
||||||
|
|
||||||
|
|
||||||
while ( count > 0 )
|
while ( count > 0 )
|
||||||
{
|
{
|
||||||
TT_SBit_Range* range;
|
TT_SBit_Range range;
|
||||||
FT_ULong count2 = strike->num_ranges;
|
FT_ULong count2 = strike->num_ranges;
|
||||||
|
|
||||||
|
|
||||||
if ( ALLOC_ARRAY( strike->sbit_ranges,
|
if ( ALLOC_ARRAY( strike->sbit_ranges,
|
||||||
strike->num_ranges,
|
strike->num_ranges,
|
||||||
TT_SBit_Range ) )
|
TT_SBit_RangeRec ) )
|
||||||
goto Exit;
|
goto Exit;
|
||||||
|
|
||||||
/* read each range */
|
/* read each range */
|
||||||
|
@ -592,16 +592,16 @@
|
||||||
TT_Free_SBit_Strikes( TT_Face face )
|
TT_Free_SBit_Strikes( TT_Face face )
|
||||||
{
|
{
|
||||||
FT_Memory memory = face->root.memory;
|
FT_Memory memory = face->root.memory;
|
||||||
TT_SBit_Strike* strike = face->sbit_strikes;
|
TT_SBit_Strike strike = face->sbit_strikes;
|
||||||
TT_SBit_Strike* strike_limit = strike + face->num_sbit_strikes;
|
TT_SBit_Strike strike_limit = strike + face->num_sbit_strikes;
|
||||||
|
|
||||||
|
|
||||||
if ( strike )
|
if ( strike )
|
||||||
{
|
{
|
||||||
for ( ; strike < strike_limit; strike++ )
|
for ( ; strike < strike_limit; strike++ )
|
||||||
{
|
{
|
||||||
TT_SBit_Range* range = strike->sbit_ranges;
|
TT_SBit_Range range = strike->sbit_ranges;
|
||||||
TT_SBit_Range* range_limit = range + strike->num_ranges;
|
TT_SBit_Range range_limit = range + strike->num_ranges;
|
||||||
|
|
||||||
|
|
||||||
if ( range )
|
if ( range )
|
||||||
|
@ -675,11 +675,11 @@
|
||||||
/* */
|
/* */
|
||||||
static FT_Error
|
static FT_Error
|
||||||
Find_SBit_Range( FT_UInt glyph_index,
|
Find_SBit_Range( FT_UInt glyph_index,
|
||||||
TT_SBit_Strike* strike,
|
TT_SBit_Strike strike,
|
||||||
TT_SBit_Range** arange,
|
TT_SBit_Range * arange,
|
||||||
FT_ULong* aglyph_offset )
|
FT_ULong* aglyph_offset )
|
||||||
{
|
{
|
||||||
TT_SBit_Range *range, *range_limit;
|
TT_SBit_RangeRec *range, *range_limit;
|
||||||
|
|
||||||
|
|
||||||
/* check whether the glyph index is within this strike's */
|
/* check whether the glyph index is within this strike's */
|
||||||
|
@ -786,12 +786,12 @@
|
||||||
Find_SBit_Image( TT_Face face,
|
Find_SBit_Image( TT_Face face,
|
||||||
FT_UInt glyph_index,
|
FT_UInt glyph_index,
|
||||||
FT_ULong strike_index,
|
FT_ULong strike_index,
|
||||||
TT_SBit_Range* *arange,
|
TT_SBit_Range *arange,
|
||||||
TT_SBit_Strike* *astrike,
|
TT_SBit_Strike *astrike,
|
||||||
FT_ULong *aglyph_offset )
|
FT_ULong *aglyph_offset )
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
TT_SBit_Strike* strike;
|
TT_SBit_Strike strike;
|
||||||
|
|
||||||
|
|
||||||
if ( !face->sbit_strikes ||
|
if ( !face->sbit_strikes ||
|
||||||
|
@ -848,8 +848,8 @@
|
||||||
/* */
|
/* */
|
||||||
static FT_Error
|
static FT_Error
|
||||||
Load_SBit_Metrics( FT_Stream stream,
|
Load_SBit_Metrics( FT_Stream stream,
|
||||||
TT_SBit_Range* range,
|
TT_SBit_Range range,
|
||||||
TT_SBit_Metrics* metrics )
|
TT_SBit_Metrics metrics )
|
||||||
{
|
{
|
||||||
FT_Error error = SFNT_Err_Ok;
|
FT_Error error = SFNT_Err_Ok;
|
||||||
|
|
||||||
|
@ -861,12 +861,12 @@
|
||||||
case 8:
|
case 8:
|
||||||
/* variable small metrics */
|
/* variable small metrics */
|
||||||
{
|
{
|
||||||
TT_SBit_Small_Metrics smetrics;
|
TT_SBit_SmallMetricsRec smetrics;
|
||||||
|
|
||||||
const FT_Frame_Field sbit_small_metrics_fields[] =
|
const FT_Frame_Field sbit_small_metrics_fields[] =
|
||||||
{
|
{
|
||||||
#undef FT_STRUCTURE
|
#undef FT_STRUCTURE
|
||||||
#define FT_STRUCTURE TT_SBit_Small_Metrics
|
#define FT_STRUCTURE TT_SBit_SmallMetricsRec
|
||||||
|
|
||||||
FT_FRAME_START( 5 ),
|
FT_FRAME_START( 5 ),
|
||||||
FT_FRAME_BYTE( height ),
|
FT_FRAME_BYTE( height ),
|
||||||
|
@ -934,7 +934,7 @@
|
||||||
/* */
|
/* */
|
||||||
static void
|
static void
|
||||||
Crop_Bitmap( FT_Bitmap* map,
|
Crop_Bitmap( FT_Bitmap* map,
|
||||||
TT_SBit_Metrics* metrics )
|
TT_SBit_Metrics metrics )
|
||||||
{
|
{
|
||||||
/***********************************************************************/
|
/***********************************************************************/
|
||||||
/* */
|
/* */
|
||||||
|
@ -1129,7 +1129,7 @@
|
||||||
FT_Int y_offset,
|
FT_Int y_offset,
|
||||||
FT_Int pix_bits,
|
FT_Int pix_bits,
|
||||||
FT_UShort image_format,
|
FT_UShort image_format,
|
||||||
TT_SBit_Metrics* metrics,
|
TT_SBit_Metrics metrics,
|
||||||
FT_Stream stream )
|
FT_Stream stream )
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
|
@ -1204,15 +1204,15 @@
|
||||||
|
|
||||||
|
|
||||||
static FT_Error
|
static FT_Error
|
||||||
Load_SBit_Image( TT_SBit_Strike* strike,
|
Load_SBit_Image( TT_SBit_Strike strike,
|
||||||
TT_SBit_Range* range,
|
TT_SBit_Range range,
|
||||||
FT_ULong ebdt_pos,
|
FT_ULong ebdt_pos,
|
||||||
FT_ULong glyph_offset,
|
FT_ULong glyph_offset,
|
||||||
FT_Bitmap* map,
|
FT_Bitmap* map,
|
||||||
FT_Int x_offset,
|
FT_Int x_offset,
|
||||||
FT_Int y_offset,
|
FT_Int y_offset,
|
||||||
FT_Stream stream,
|
FT_Stream stream,
|
||||||
TT_SBit_Metrics* metrics )
|
TT_SBit_Metrics metrics )
|
||||||
{
|
{
|
||||||
FT_Memory memory = stream->memory;
|
FT_Memory memory = stream->memory;
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
|
@ -1298,13 +1298,13 @@
|
||||||
/* All right, we have a compound format. First of all, read */
|
/* All right, we have a compound format. First of all, read */
|
||||||
/* the array of elements. */
|
/* the array of elements. */
|
||||||
{
|
{
|
||||||
TT_SBit_Component* components;
|
TT_SBit_Component components;
|
||||||
TT_SBit_Component* comp;
|
TT_SBit_Component comp;
|
||||||
FT_UShort num_components, count;
|
FT_UShort num_components, count;
|
||||||
|
|
||||||
|
|
||||||
if ( READ_UShort( num_components ) ||
|
if ( READ_UShort( num_components ) ||
|
||||||
ALLOC_ARRAY( components, num_components, TT_SBit_Component ) )
|
ALLOC_ARRAY( components, num_components, TT_SBit_ComponentRec ) )
|
||||||
goto Exit;
|
goto Exit;
|
||||||
|
|
||||||
count = num_components;
|
count = num_components;
|
||||||
|
@ -1326,8 +1326,8 @@
|
||||||
comp = components;
|
comp = components;
|
||||||
for ( ; count > 0; count--, comp++ )
|
for ( ; count > 0; count--, comp++ )
|
||||||
{
|
{
|
||||||
TT_SBit_Range* elem_range;
|
TT_SBit_Range elem_range;
|
||||||
TT_SBit_Metrics elem_metrics;
|
TT_SBit_MetricsRec elem_metrics;
|
||||||
FT_ULong elem_offset;
|
FT_ULong elem_offset;
|
||||||
|
|
||||||
|
|
||||||
|
@ -1402,14 +1402,14 @@
|
||||||
FT_UInt load_flags,
|
FT_UInt load_flags,
|
||||||
FT_Stream stream,
|
FT_Stream stream,
|
||||||
FT_Bitmap *map,
|
FT_Bitmap *map,
|
||||||
TT_SBit_Metrics *metrics )
|
TT_SBit_MetricsRec *metrics )
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
FT_Memory memory = stream->memory;
|
FT_Memory memory = stream->memory;
|
||||||
FT_ULong ebdt_pos, glyph_offset;
|
FT_ULong ebdt_pos, glyph_offset;
|
||||||
|
|
||||||
TT_SBit_Strike* strike;
|
TT_SBit_Strike strike;
|
||||||
TT_SBit_Range* range;
|
TT_SBit_Range range;
|
||||||
|
|
||||||
|
|
||||||
/* Check whether there is a glyph sbit for the current index */
|
/* Check whether there is a glyph sbit for the current index */
|
||||||
|
|
|
@ -48,7 +48,7 @@ FT_BEGIN_HEADER
|
||||||
FT_UInt load_flags,
|
FT_UInt load_flags,
|
||||||
FT_Stream stream,
|
FT_Stream stream,
|
||||||
FT_Bitmap *map,
|
FT_Bitmap *map,
|
||||||
TT_SBit_Metrics *metrics );
|
TT_SBit_MetricsRec *metrics );
|
||||||
|
|
||||||
|
|
||||||
FT_END_HEADER
|
FT_END_HEADER
|
||||||
|
|
|
@ -94,7 +94,7 @@
|
||||||
FT_UInt right_glyph,
|
FT_UInt right_glyph,
|
||||||
FT_Vector* kerning )
|
FT_Vector* kerning )
|
||||||
{
|
{
|
||||||
TT_Kern_0_Pair* pair;
|
TT_Kern0_Pair pair;
|
||||||
|
|
||||||
|
|
||||||
if ( !face )
|
if ( !face )
|
||||||
|
@ -367,7 +367,7 @@
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
TT_Face face;
|
TT_Face face;
|
||||||
TT_CMapTable* cmap;
|
TT_CMapTable cmap;
|
||||||
|
|
||||||
|
|
||||||
cmap = &charmap->cmap;
|
cmap = &charmap->cmap;
|
||||||
|
@ -414,7 +414,7 @@
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
TT_Face face;
|
TT_Face face;
|
||||||
TT_CMapTable* cmap;
|
TT_CMapTable cmap;
|
||||||
|
|
||||||
|
|
||||||
cmap = &charmap->cmap;
|
cmap = &charmap->cmap;
|
||||||
|
|
|
@ -87,20 +87,20 @@
|
||||||
FT_Short* bearing,
|
FT_Short* bearing,
|
||||||
FT_UShort* advance )
|
FT_UShort* advance )
|
||||||
{
|
{
|
||||||
TT_LongMetrics* longs_m;
|
TT_LongMetrics longs_m;
|
||||||
FT_UShort k = header->number_Of_HMetrics;
|
FT_UShort k = header->number_Of_HMetrics;
|
||||||
|
|
||||||
|
|
||||||
if ( idx < (FT_UInt)k )
|
if ( idx < (FT_UInt)k )
|
||||||
{
|
{
|
||||||
longs_m = (TT_LongMetrics*)header->long_metrics + idx;
|
longs_m = (TT_LongMetrics )header->long_metrics + idx;
|
||||||
*bearing = longs_m->bearing;
|
*bearing = longs_m->bearing;
|
||||||
*advance = longs_m->advance;
|
*advance = longs_m->advance;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
*bearing = ((TT_ShortMetrics*)header->short_metrics)[idx - k];
|
*bearing = ((TT_ShortMetrics*)header->short_metrics)[idx - k];
|
||||||
*advance = ((TT_LongMetrics*)header->long_metrics)[k - 1].advance;
|
*advance = ((TT_LongMetrics )header->long_metrics)[k - 1].advance;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -175,7 +175,7 @@
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
tt_prepare_zone( TT_GlyphZone* zone,
|
tt_prepare_zone( TT_GlyphZone zone,
|
||||||
FT_GlyphLoad load,
|
FT_GlyphLoad load,
|
||||||
FT_UInt start_point,
|
FT_UInt start_point,
|
||||||
FT_UInt start_contour )
|
FT_UInt start_contour )
|
||||||
|
@ -202,7 +202,7 @@
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_Error )
|
FT_CALLBACK_DEF( FT_Error )
|
||||||
TT_Access_Glyph_Frame( TT_Loader* loader,
|
TT_Access_Glyph_Frame( TT_Loader loader,
|
||||||
FT_UInt glyph_index,
|
FT_UInt glyph_index,
|
||||||
FT_ULong offset,
|
FT_ULong offset,
|
||||||
FT_UInt byte_count )
|
FT_UInt byte_count )
|
||||||
|
@ -225,7 +225,7 @@
|
||||||
|
|
||||||
|
|
||||||
FT_CALLBACK_DEF( void )
|
FT_CALLBACK_DEF( void )
|
||||||
TT_Forget_Glyph_Frame( TT_Loader* loader )
|
TT_Forget_Glyph_Frame( TT_Loader loader )
|
||||||
{
|
{
|
||||||
FT_Stream stream = loader->stream;
|
FT_Stream stream = loader->stream;
|
||||||
|
|
||||||
|
@ -235,7 +235,7 @@
|
||||||
|
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_Error )
|
FT_CALLBACK_DEF( FT_Error )
|
||||||
TT_Load_Glyph_Header( TT_Loader* loader )
|
TT_Load_Glyph_Header( TT_Loader loader )
|
||||||
{
|
{
|
||||||
FT_Stream stream = loader->stream;
|
FT_Stream stream = loader->stream;
|
||||||
FT_Int byte_len = loader->byte_len - 10;
|
FT_Int byte_len = loader->byte_len - 10;
|
||||||
|
@ -263,7 +263,7 @@
|
||||||
|
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_Error )
|
FT_CALLBACK_DEF( FT_Error )
|
||||||
TT_Load_Simple_Glyph( TT_Loader* load )
|
TT_Load_Simple_Glyph( TT_Loader load )
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
FT_Stream stream = load->stream;
|
FT_Stream stream = load->stream;
|
||||||
|
@ -466,7 +466,7 @@
|
||||||
|
|
||||||
|
|
||||||
FT_CALLBACK_DEF( FT_Error )
|
FT_CALLBACK_DEF( FT_Error )
|
||||||
TT_Load_Composite_Glyph( TT_Loader* loader )
|
TT_Load_Composite_Glyph( TT_Loader loader )
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
FT_Stream stream = loader->stream;
|
FT_Stream stream = loader->stream;
|
||||||
|
@ -603,7 +603,7 @@
|
||||||
/* interpretation. */
|
/* interpretation. */
|
||||||
/* */
|
/* */
|
||||||
static FT_Error
|
static FT_Error
|
||||||
TT_Process_Simple_Glyph( TT_Loader* load,
|
TT_Process_Simple_Glyph( TT_Loader load,
|
||||||
FT_Bool debug )
|
FT_Bool debug )
|
||||||
{
|
{
|
||||||
FT_GlyphLoader gloader = load->gloader;
|
FT_GlyphLoader gloader = load->gloader;
|
||||||
|
@ -612,7 +612,7 @@
|
||||||
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
|
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
|
||||||
FT_UInt n_ins;
|
FT_UInt n_ins;
|
||||||
#endif
|
#endif
|
||||||
TT_GlyphZone* zone = &load->zone;
|
TT_GlyphZone zone = &load->zone;
|
||||||
FT_Error error = TT_Err_Ok;
|
FT_Error error = TT_Err_Ok;
|
||||||
|
|
||||||
FT_UNUSED( debug ); /* used by truetype interpreter only */
|
FT_UNUSED( debug ); /* used by truetype interpreter only */
|
||||||
|
@ -737,7 +737,7 @@
|
||||||
/* TT_Loader object. */
|
/* TT_Loader object. */
|
||||||
/* */
|
/* */
|
||||||
static FT_Error
|
static FT_Error
|
||||||
load_truetype_glyph( TT_Loader* loader,
|
load_truetype_glyph( TT_Loader loader,
|
||||||
FT_UInt glyph_index )
|
FT_UInt glyph_index )
|
||||||
{
|
{
|
||||||
|
|
||||||
|
@ -1103,7 +1103,7 @@
|
||||||
{
|
{
|
||||||
FT_UShort n_ins;
|
FT_UShort n_ins;
|
||||||
TT_ExecContext exec = loader->exec;
|
TT_ExecContext exec = loader->exec;
|
||||||
TT_GlyphZone* pts;
|
TT_GlyphZone pts;
|
||||||
FT_Vector* pp1;
|
FT_Vector* pp1;
|
||||||
|
|
||||||
|
|
||||||
|
@ -1210,7 +1210,7 @@
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
compute_glyph_metrics( TT_Loader* loader,
|
compute_glyph_metrics( TT_Loader loader,
|
||||||
FT_UInt glyph_index )
|
FT_UInt glyph_index )
|
||||||
{
|
{
|
||||||
FT_BBox bbox;
|
FT_BBox bbox;
|
||||||
|
@ -1426,7 +1426,7 @@
|
||||||
TT_Face face;
|
TT_Face face;
|
||||||
FT_Stream stream;
|
FT_Stream stream;
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
TT_Loader loader;
|
TT_LoaderRec loader;
|
||||||
|
|
||||||
|
|
||||||
face = (TT_Face)glyph->face;
|
face = (TT_Face)glyph->face;
|
||||||
|
@ -1457,7 +1457,7 @@
|
||||||
( load_flags & FT_LOAD_NO_BITMAP ) == 0 )
|
( load_flags & FT_LOAD_NO_BITMAP ) == 0 )
|
||||||
|
|
||||||
{
|
{
|
||||||
TT_SBit_Metrics metrics;
|
TT_SBit_MetricsRec metrics;
|
||||||
|
|
||||||
|
|
||||||
error = sfnt->load_sbit_image( face,
|
error = sfnt->load_sbit_image( face,
|
||||||
|
|
|
@ -1397,7 +1397,7 @@
|
||||||
/* zone :: The affected glyph zone. */
|
/* zone :: The affected glyph zone. */
|
||||||
/* */
|
/* */
|
||||||
static void
|
static void
|
||||||
Direct_Move( EXEC_OP_ TT_GlyphZone* zone,
|
Direct_Move( EXEC_OP_ TT_GlyphZone zone,
|
||||||
FT_UShort point,
|
FT_UShort point,
|
||||||
FT_F26Dot6 distance )
|
FT_F26Dot6 distance )
|
||||||
{
|
{
|
||||||
|
@ -1459,7 +1459,7 @@
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
Direct_Move_X( EXEC_OP_ TT_GlyphZone* zone,
|
Direct_Move_X( EXEC_OP_ TT_GlyphZone zone,
|
||||||
FT_UShort point,
|
FT_UShort point,
|
||||||
FT_F26Dot6 distance )
|
FT_F26Dot6 distance )
|
||||||
{
|
{
|
||||||
|
@ -1471,7 +1471,7 @@
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
Direct_Move_Y( EXEC_OP_ TT_GlyphZone* zone,
|
Direct_Move_Y( EXEC_OP_ TT_GlyphZone zone,
|
||||||
FT_UShort point,
|
FT_UShort point,
|
||||||
FT_F26Dot6 distance )
|
FT_F26Dot6 distance )
|
||||||
{
|
{
|
||||||
|
@ -4983,10 +4983,10 @@
|
||||||
static FT_Bool
|
static FT_Bool
|
||||||
Compute_Point_Displacement( EXEC_OP_ FT_F26Dot6* x,
|
Compute_Point_Displacement( EXEC_OP_ FT_F26Dot6* x,
|
||||||
FT_F26Dot6* y,
|
FT_F26Dot6* y,
|
||||||
TT_GlyphZone* zone,
|
TT_GlyphZone zone,
|
||||||
FT_UShort* refp )
|
FT_UShort* refp )
|
||||||
{
|
{
|
||||||
TT_GlyphZone zp;
|
TT_GlyphZoneRec zp;
|
||||||
FT_UShort p;
|
FT_UShort p;
|
||||||
FT_F26Dot6 d;
|
FT_F26Dot6 d;
|
||||||
|
|
||||||
|
@ -5065,7 +5065,7 @@
|
||||||
static void
|
static void
|
||||||
Ins_SHP( INS_ARG )
|
Ins_SHP( INS_ARG )
|
||||||
{
|
{
|
||||||
TT_GlyphZone zp;
|
TT_GlyphZoneRec zp;
|
||||||
FT_UShort refp;
|
FT_UShort refp;
|
||||||
|
|
||||||
FT_F26Dot6 dx,
|
FT_F26Dot6 dx,
|
||||||
|
@ -5118,7 +5118,7 @@
|
||||||
static void
|
static void
|
||||||
Ins_SHC( INS_ARG )
|
Ins_SHC( INS_ARG )
|
||||||
{
|
{
|
||||||
TT_GlyphZone zp;
|
TT_GlyphZoneRec zp;
|
||||||
FT_UShort refp;
|
FT_UShort refp;
|
||||||
FT_F26Dot6 dx,
|
FT_F26Dot6 dx,
|
||||||
dy;
|
dy;
|
||||||
|
@ -5174,7 +5174,7 @@
|
||||||
static void
|
static void
|
||||||
Ins_SHZ( INS_ARG )
|
Ins_SHZ( INS_ARG )
|
||||||
{
|
{
|
||||||
TT_GlyphZone zp;
|
TT_GlyphZoneRec zp;
|
||||||
FT_UShort refp;
|
FT_UShort refp;
|
||||||
FT_F26Dot6 dx,
|
FT_F26Dot6 dx,
|
||||||
dy;
|
dy;
|
||||||
|
|
|
@ -73,7 +73,7 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
/* Point displacement along the freedom vector routine */
|
/* Point displacement along the freedom vector routine */
|
||||||
typedef void
|
typedef void
|
||||||
(*TT_Move_Func)( EXEC_OP_ TT_GlyphZone* zone,
|
(*TT_Move_Func)( EXEC_OP_ TT_GlyphZone zone,
|
||||||
FT_UShort point,
|
FT_UShort point,
|
||||||
FT_F26Dot6 distance );
|
FT_F26Dot6 distance );
|
||||||
|
|
||||||
|
@ -130,7 +130,7 @@ FT_BEGIN_HEADER
|
||||||
FT_Long args;
|
FT_Long args;
|
||||||
FT_UInt new_top; /* new top after exec. */
|
FT_UInt new_top; /* new top after exec. */
|
||||||
|
|
||||||
TT_GlyphZone zp0, /* zone records */
|
TT_GlyphZoneRec zp0, /* zone records */
|
||||||
zp1,
|
zp1,
|
||||||
zp2,
|
zp2,
|
||||||
pts,
|
pts,
|
||||||
|
|
|
@ -66,7 +66,7 @@
|
||||||
/* zone :: A pointer to the target glyph zone. */
|
/* zone :: A pointer to the target glyph zone. */
|
||||||
/* */
|
/* */
|
||||||
FT_LOCAL_DEF( void )
|
FT_LOCAL_DEF( void )
|
||||||
TT_Done_GlyphZone( TT_GlyphZone* zone )
|
TT_Done_GlyphZone( TT_GlyphZone zone )
|
||||||
{
|
{
|
||||||
FT_Memory memory = zone->memory;
|
FT_Memory memory = zone->memory;
|
||||||
|
|
||||||
|
@ -106,7 +106,7 @@
|
||||||
TT_New_GlyphZone( FT_Memory memory,
|
TT_New_GlyphZone( FT_Memory memory,
|
||||||
FT_UShort maxPoints,
|
FT_UShort maxPoints,
|
||||||
FT_Short maxContours,
|
FT_Short maxContours,
|
||||||
TT_GlyphZone* zone )
|
TT_GlyphZone zone )
|
||||||
{
|
{
|
||||||
FT_Error error;
|
FT_Error error;
|
||||||
|
|
||||||
|
@ -698,7 +698,7 @@
|
||||||
|
|
||||||
if ( !error )
|
if ( !error )
|
||||||
{
|
{
|
||||||
TT_SBit_Strike* strike = face->sbit_strikes + strike_index;
|
TT_SBit_Strike strike = face->sbit_strikes + strike_index;
|
||||||
|
|
||||||
|
|
||||||
sbit_metrics->x_ppem = metrics->x_ppem;
|
sbit_metrics->x_ppem = metrics->x_ppem;
|
||||||
|
|
|
@ -108,13 +108,13 @@ FT_BEGIN_HEADER
|
||||||
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
|
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
|
||||||
|
|
||||||
FT_LOCAL( void )
|
FT_LOCAL( void )
|
||||||
TT_Done_GlyphZone( TT_GlyphZone* zone );
|
TT_Done_GlyphZone( TT_GlyphZone zone );
|
||||||
|
|
||||||
FT_LOCAL( FT_Error )
|
FT_LOCAL( FT_Error )
|
||||||
TT_New_GlyphZone( FT_Memory memory,
|
TT_New_GlyphZone( FT_Memory memory,
|
||||||
FT_UShort maxPoints,
|
FT_UShort maxPoints,
|
||||||
FT_Short maxContours,
|
FT_Short maxContours,
|
||||||
TT_GlyphZone* zone );
|
TT_GlyphZone zone );
|
||||||
|
|
||||||
#endif /* TT_CONFIG_OPTION_BYTECODE_INTERPRETER */
|
#endif /* TT_CONFIG_OPTION_BYTECODE_INTERPRETER */
|
||||||
|
|
||||||
|
@ -203,7 +203,7 @@ FT_BEGIN_HEADER
|
||||||
FT_Pos left_bearing;
|
FT_Pos left_bearing;
|
||||||
FT_Pos advance;
|
FT_Pos advance;
|
||||||
|
|
||||||
TT_GlyphZone zone;
|
TT_GlyphZoneRec zone;
|
||||||
|
|
||||||
FT_Long arg1; /* first argument */
|
FT_Long arg1; /* first argument */
|
||||||
FT_Long arg2; /* second argument */
|
FT_Long arg2; /* second argument */
|
||||||
|
@ -343,7 +343,7 @@ FT_BEGIN_HEADER
|
||||||
FT_UShort storage_size; /* The storage area is now part of */
|
FT_UShort storage_size; /* The storage area is now part of */
|
||||||
FT_Long* storage; /* the instance */
|
FT_Long* storage; /* the instance */
|
||||||
|
|
||||||
TT_GlyphZone twilight; /* The instance's twilight zone */
|
TT_GlyphZoneRec twilight; /* The instance's twilight zone */
|
||||||
|
|
||||||
/* debugging variables */
|
/* debugging variables */
|
||||||
|
|
||||||
|
@ -367,7 +367,7 @@ FT_BEGIN_HEADER
|
||||||
{
|
{
|
||||||
FT_DriverRec root;
|
FT_DriverRec root;
|
||||||
TT_ExecContext context; /* execution context */
|
TT_ExecContext context; /* execution context */
|
||||||
TT_GlyphZone zone; /* glyph loader points zone */
|
TT_GlyphZoneRec zone; /* glyph loader points zone */
|
||||||
|
|
||||||
void* extension_component;
|
void* extension_component;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue