19 #ifndef __FREETYPE_H__ 20 #define __FREETYPE_H__ 24 #error "`ft2build.h' hasn't been included yet!" 25 #error "Please always use macros to include FreeType header files." 27 #error " #include <ft2build.h>" 28 #error " #include FT_FREETYPE_H" 33 #include FT_CONFIG_CONFIG_H 511 #define FT_ENC_TAG( value, a, b, c, d ) \ 512 value = ( ( (FT_UInt32)(a) << 24 ) | \ 513 ( (FT_UInt32)(b) << 16 ) | \ 514 ( (FT_UInt32)(c) << 8 ) | \ 663 FT_ENC_TAG( FT_ENCODING_MS_SYMBOL,
's',
'y',
'm',
'b' ),
664 FT_ENC_TAG( FT_ENCODING_UNICODE,
'u',
'n',
'i',
'c' ),
666 FT_ENC_TAG( FT_ENCODING_SJIS,
's',
'j',
'i',
's' ),
667 FT_ENC_TAG( FT_ENCODING_GB2312,
'g',
'b',
' ',
' ' ),
668 FT_ENC_TAG( FT_ENCODING_BIG5,
'b',
'i',
'g',
'5' ),
669 FT_ENC_TAG( FT_ENCODING_WANSUNG,
'w',
'a',
'n',
's' ),
670 FT_ENC_TAG( FT_ENCODING_JOHAB,
'j',
'o',
'h',
'a' ),
679 FT_ENC_TAG( FT_ENCODING_ADOBE_STANDARD,
'A',
'D',
'O',
'B' ),
680 FT_ENC_TAG( FT_ENCODING_ADOBE_EXPERT,
'A',
'D',
'B',
'E' ),
681 FT_ENC_TAG( FT_ENCODING_ADOBE_CUSTOM,
'A',
'D',
'B',
'C' ),
682 FT_ENC_TAG( FT_ENCODING_ADOBE_LATIN_1,
'l',
'a',
't',
'1' ),
684 FT_ENC_TAG( FT_ENCODING_OLD_LATIN_2,
'l',
'a',
't',
'2' ),
686 FT_ENC_TAG( FT_ENCODING_APPLE_ROMAN,
'a',
'r',
'm',
'n' )
700 #define ft_encoding_none FT_ENCODING_NONE 701 #define ft_encoding_unicode FT_ENCODING_UNICODE 702 #define ft_encoding_symbol FT_ENCODING_MS_SYMBOL 703 #define ft_encoding_latin_1 FT_ENCODING_ADOBE_LATIN_1 704 #define ft_encoding_latin_2 FT_ENCODING_OLD_LATIN_2 705 #define ft_encoding_sjis FT_ENCODING_SJIS 706 #define ft_encoding_gb2312 FT_ENCODING_GB2312 707 #define ft_encoding_big5 FT_ENCODING_BIG5 708 #define ft_encoding_wansung FT_ENCODING_WANSUNG 709 #define ft_encoding_johab FT_ENCODING_JOHAB 711 #define ft_encoding_adobe_standard FT_ENCODING_ADOBE_STANDARD 712 #define ft_encoding_adobe_expert FT_ENCODING_ADOBE_EXPERT 713 #define ft_encoding_adobe_custom FT_ENCODING_ADOBE_CUSTOM 714 #define ft_encoding_apple_roman FT_ENCODING_APPLE_ROMAN 971 FT_Face_Internal
internal;
1076 #define FT_FACE_FLAG_SCALABLE ( 1L << 0 ) 1077 #define FT_FACE_FLAG_FIXED_SIZES ( 1L << 1 ) 1078 #define FT_FACE_FLAG_FIXED_WIDTH ( 1L << 2 ) 1079 #define FT_FACE_FLAG_SFNT ( 1L << 3 ) 1080 #define FT_FACE_FLAG_HORIZONTAL ( 1L << 4 ) 1081 #define FT_FACE_FLAG_VERTICAL ( 1L << 5 ) 1082 #define FT_FACE_FLAG_KERNING ( 1L << 6 ) 1083 #define FT_FACE_FLAG_FAST_GLYPHS ( 1L << 7 ) 1084 #define FT_FACE_FLAG_MULTIPLE_MASTERS ( 1L << 8 ) 1085 #define FT_FACE_FLAG_GLYPH_NAMES ( 1L << 9 ) 1086 #define FT_FACE_FLAG_EXTERNAL_STREAM ( 1L << 10 ) 1087 #define FT_FACE_FLAG_HINTER ( 1L << 11 ) 1088 #define FT_FACE_FLAG_CID_KEYED ( 1L << 12 ) 1089 #define FT_FACE_FLAG_TRICKY ( 1L << 13 ) 1105 #define FT_HAS_HORIZONTAL( face ) \ 1106 ( face->face_flags & FT_FACE_FLAG_HORIZONTAL ) 1119 #define FT_HAS_VERTICAL( face ) \ 1120 ( face->face_flags & FT_FACE_FLAG_VERTICAL ) 1133 #define FT_HAS_KERNING( face ) \ 1134 ( face->face_flags & FT_FACE_FLAG_KERNING ) 1148 #define FT_IS_SCALABLE( face ) \ 1149 ( face->face_flags & FT_FACE_FLAG_SCALABLE ) 1167 #define FT_IS_SFNT( face ) \ 1168 ( face->face_flags & FT_FACE_FLAG_SFNT ) 1182 #define FT_IS_FIXED_WIDTH( face ) \ 1183 ( face->face_flags & FT_FACE_FLAG_FIXED_WIDTH ) 1197 #define FT_HAS_FIXED_SIZES( face ) \ 1198 ( face->face_flags & FT_FACE_FLAG_FIXED_SIZES ) 1210 #define FT_HAS_FAST_GLYPHS( face ) 0 1223 #define FT_HAS_GLYPH_NAMES( face ) \ 1224 ( face->face_flags & FT_FACE_FLAG_GLYPH_NAMES ) 1238 #define FT_HAS_MULTIPLE_MASTERS( face ) \ 1239 ( face->face_flags & FT_FACE_FLAG_MULTIPLE_MASTERS ) 1256 #define FT_IS_CID_KEYED( face ) \ 1257 ( face->face_flags & FT_FACE_FLAG_CID_KEYED ) 1270 #define FT_IS_TRICKY( face ) \ 1271 ( face->face_flags & FT_FACE_FLAG_TRICKY ) 1296 #define FT_STYLE_FLAG_ITALIC ( 1 << 0 ) 1297 #define FT_STYLE_FLAG_BOLD ( 1 << 1 ) 1739 #define FT_OPEN_MEMORY 0x1 1740 #define FT_OPEN_STREAM 0x2 1741 #define FT_OPEN_PATHNAME 0x4 1742 #define FT_OPEN_DRIVER 0x8 1743 #define FT_OPEN_PARAMS 0x10 1745 #define ft_open_memory FT_OPEN_MEMORY 1746 #define ft_open_stream FT_OPEN_STREAM 1747 #define ft_open_pathname FT_OPEN_PATHNAME 1748 #define ft_open_driver FT_OPEN_DRIVER 1749 #define ft_open_params FT_OPEN_PARAMS 1877 const char* filepathname,
1999 const char* filepathname );
2548 #define FT_LOAD_DEFAULT 0x0 2549 #define FT_LOAD_NO_SCALE ( 1L << 0 ) 2550 #define FT_LOAD_NO_HINTING ( 1L << 1 ) 2551 #define FT_LOAD_RENDER ( 1L << 2 ) 2552 #define FT_LOAD_NO_BITMAP ( 1L << 3 ) 2553 #define FT_LOAD_VERTICAL_LAYOUT ( 1L << 4 ) 2554 #define FT_LOAD_FORCE_AUTOHINT ( 1L << 5 ) 2555 #define FT_LOAD_CROP_BITMAP ( 1L << 6 ) 2556 #define FT_LOAD_PEDANTIC ( 1L << 7 ) 2557 #define FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH ( 1L << 9 ) 2558 #define FT_LOAD_NO_RECURSE ( 1L << 10 ) 2559 #define FT_LOAD_IGNORE_TRANSFORM ( 1L << 11 ) 2560 #define FT_LOAD_MONOCHROME ( 1L << 12 ) 2561 #define FT_LOAD_LINEAR_DESIGN ( 1L << 13 ) 2562 #define FT_LOAD_NO_AUTOHINT ( 1L << 15 ) 2567 #define FT_LOAD_ADVANCE_ONLY ( 1L << 8 ) 2568 #define FT_LOAD_SBITS_ONLY ( 1L << 14 ) 2636 #define FT_LOAD_TARGET_( x ) ( (FT_Int32)( (x) & 15 ) << 16 ) 2638 #define FT_LOAD_TARGET_NORMAL FT_LOAD_TARGET_( FT_RENDER_MODE_NORMAL ) 2639 #define FT_LOAD_TARGET_LIGHT FT_LOAD_TARGET_( FT_RENDER_MODE_LIGHT ) 2640 #define FT_LOAD_TARGET_MONO FT_LOAD_TARGET_( FT_RENDER_MODE_MONO ) 2641 #define FT_LOAD_TARGET_LCD FT_LOAD_TARGET_( FT_RENDER_MODE_LCD ) 2642 #define FT_LOAD_TARGET_LCD_V FT_LOAD_TARGET_( FT_RENDER_MODE_LCD_V ) 2655 #define FT_LOAD_TARGET_MODE( x ) ( (FT_Render_Mode)( ( (x) >> 16 ) & 15 ) ) 2773 #define ft_render_mode_normal FT_RENDER_MODE_NORMAL 2774 #define ft_render_mode_mono FT_RENDER_MODE_MONO 2841 #define ft_kerning_default FT_KERNING_DEFAULT 2853 #define ft_kerning_unfitted FT_KERNING_UNFITTED 2865 #define ft_kerning_unscaled FT_KERNING_UNSCALED 3078 FT_CharMap charmap );
3261 #define FT_SUBGLYPH_FLAG_ARGS_ARE_WORDS 1 3262 #define FT_SUBGLYPH_FLAG_ARGS_ARE_XY_VALUES 2 3263 #define FT_SUBGLYPH_FLAG_ROUND_XY_TO_GRID 4 3264 #define FT_SUBGLYPH_FLAG_SCALE 8 3265 #define FT_SUBGLYPH_FLAG_XY_SCALE 0x40 3266 #define FT_SUBGLYPH_FLAG_2X2 0x80 3267 #define FT_SUBGLYPH_FLAG_USE_MY_METRICS 0x200 3374 #define FT_FSTYPE_INSTALLABLE_EMBEDDING 0x0000 3375 #define FT_FSTYPE_RESTRICTED_LICENSE_EMBEDDING 0x0002 3376 #define FT_FSTYPE_PREVIEW_AND_PRINT_EMBEDDING 0x0004 3377 #define FT_FSTYPE_EDITABLE_EMBEDDING 0x0008 3378 #define FT_FSTYPE_NO_SUBSETTING 0x0100 3379 #define FT_FSTYPE_BITMAP_EMBEDDING_ONLY 0x0200 3729 #ifdef FT_MULFIX_INLINED 3730 #define FT_MulFix( a, b ) FT_MULFIX_INLINED( a, b ) 3883 #define FREETYPE_MAJOR 2 3884 #define FREETYPE_MINOR 4 3885 #define FREETYPE_PATCH 12
const FT_Byte * memory_base
FT_Get_Kerning(FT_Face face, FT_UInt left_glyph, FT_UInt right_glyph, FT_UInt kern_mode, FT_Vector *akerning)
struct FT_Parameter_ FT_Parameter
FT_DivFix(FT_Long a, FT_Long b)
FT_Select_Size(FT_Face face, FT_Int strike_index)
FT_BEGIN_HEADER typedef signed long FT_Pos
GLboolean GLboolean GLboolean GLboolean a
struct FT_Open_Args_ FT_Open_Args
FT_Set_Transform(FT_Face face, FT_Matrix *matrix, FT_Vector *delta)
struct FT_Size_RequestRec_ FT_Size_RequestRec
FT_Short underline_thickness
enum FT_Render_Mode_ FT_Render_Mode
FT_Get_Next_Char(FT_Face face, FT_ULong char_code, FT_UInt *agindex)
FT_Reference_Face(FT_Face face)
FT_Bitmap_Size * available_sizes
FT_Fixed linearHoriAdvance
struct FT_SizeRec_ FT_SizeRec
struct FT_Size_InternalRec_ * FT_Size_Internal
FT_Done_FreeType(FT_Library library)
FT_New_Memory_Face(FT_Library library, const FT_Byte *file_base, FT_Long file_size, FT_Long face_index, FT_Face *aface)
struct FT_Slot_InternalRec_ * FT_Slot_Internal
GLboolean GLboolean GLboolean b
FT_Face_GetCharVariantIsDefault(FT_Face face, FT_ULong charcode, FT_ULong variantSelector)
struct FT_GlyphSlotRec_ FT_GlyphSlotRec
struct FT_ModuleRec_ * FT_Module
FT_Init_FreeType(FT_Library *alibrary)
FT_BEGIN_HEADER typedef unsigned char FT_Bool
FT_Set_Pixel_Sizes(FT_Face face, FT_UInt pixel_width, FT_UInt pixel_height)
FT_Short max_advance_height
GLenum GLuint GLint GLenum face
FT_Get_Charmap_Index(FT_CharMap charmap)
FT_Load_Glyph(FT_Face face, FT_UInt glyph_index, FT_Int32 load_flags)
FT_Attach_Stream(FT_Face face, FT_Open_Args *parameters)
FT_Face_GetCharVariantIndex(FT_Face face, FT_ULong charcode, FT_ULong variantSelector)
FT_Face_GetVariantsOfChar(FT_Face face, FT_ULong charcode)
FT_Request_Size(FT_Face face, FT_Size_Request req)
FT_Get_Char_Index(FT_Face face, FT_ULong charcode)
FT_Set_Char_Size(FT_Face face, FT_F26Dot6 char_width, FT_F26Dot6 char_height, FT_UInt horz_resolution, FT_UInt vert_resolution)
FT_MulDiv(FT_Long a, FT_Long b, FT_Long c)
FT_Face_SetUnpatentedHinting(FT_Face face, FT_Bool value)
FT_Face_CheckTrueTypePatents(FT_Face face)
FT_Get_Postscript_Name(FT_Face face)
FT_Get_Track_Kerning(FT_Face face, FT_Fixed point_size, FT_Int degree, FT_Fixed *akerning)
FT_Select_Charmap(FT_Face face, FT_Encoding encoding)
struct FT_FaceRec_ * FT_Face
FT_Render_Glyph(FT_GlyphSlot slot, FT_Render_Mode render_mode)
struct FT_Size_Metrics_ FT_Size_Metrics
FT_Get_SubGlyph_Info(FT_GlyphSlot glyph, FT_UInt sub_index, FT_Int *p_index, FT_UInt *p_flags, FT_Int *p_arg1, FT_Int *p_arg2, FT_Matrix *p_transform)
FT_Load_Char(FT_Face face, FT_ULong char_code, FT_Int32 load_flags)
FT_Get_FSType_Flags(FT_Face face)
struct FT_Size_RequestRec_ * FT_Size_Request
FT_Get_First_Char(FT_Face face, FT_UInt *agindex)
enum FT_Encoding_ FT_Encoding
GLsizei const GLfloat * value
FT_Set_Charmap(FT_Face face, FT_CharMap charmap)
struct FT_CharMapRec_ FT_CharMapRec
struct FT_FaceRec_ FT_FaceRec
typedefFT_BEGIN_HEADER struct FT_MemoryRec_ * FT_Memory
enum FT_Kerning_Mode_ FT_Kerning_Mode
FT_Size_Request_Type type
FT_MulFix(FT_Long a, FT_Long b)
enum FT_Size_Request_Type_ FT_Size_Request_Type
FT_Vector_Transform(FT_Vector *vec, const FT_Matrix *matrix)
FT_BEGIN_HEADER struct FT_Glyph_Metrics_ FT_Glyph_Metrics
struct FT_Face_InternalRec_ * FT_Face_Internal
struct FT_SizeRec_ * FT_Size
struct FT_GlyphSlotRec_ * FT_GlyphSlot
enum FT_Glyph_Format_ FT_Glyph_Format
#define FT_ENC_TAG(value, a, b, c, d)
struct FT_DriverRec_ * FT_Driver
FT_Open_Face(FT_Library library, const FT_Open_Args *args, FT_Long face_index, FT_Face *aface)
FT_New_Face(FT_Library library, const char *filepathname, FT_Long face_index, FT_Face *aface)
FT_Fixed linearVertAdvance
struct FT_SubGlyphRec_ * FT_SubGlyph
struct FT_LibraryRec_ * FT_Library
FT_Done_Face(FT_Face face)
struct FT_Bitmap_Size_ FT_Bitmap_Size
struct FT_CharMapRec_ * FT_CharMap
FT_Short max_advance_width
FT_Get_Glyph_Name(FT_Face face, FT_UInt glyph_index, FT_Pointer buffer, FT_UInt buffer_max)
struct FT_RendererRec_ * FT_Renderer
FT_Library_Version(FT_Library library, FT_Int *amajor, FT_Int *aminor, FT_Int *apatch)
FT_Face_GetVariantSelectors(FT_Face face)
FT_Face_GetCharsOfVariant(FT_Face face, FT_ULong variantSelector)
FT_Short underline_position
FT_Get_Name_Index(FT_Face face, FT_String *glyph_name)
FT_Attach_File(FT_Face face, const char *filepathname)