20 #error "`ft2build.h' hasn't been included yet!"
21 #error "Please always use macros to include FreeType header files."
23 #error " #include <ft2build.h>"
24 #error " #include FT_FREETYPE_H"
28 #ifndef __FREETYPE_H__
29 #define __FREETYPE_H__
33 #include FT_CONFIG_CONFIG_H
507 #define FT_ENC_TAG( value, a, b, c, d ) \
508 value = ( ( (FT_UInt32)(a) << 24 ) | \
509 ( (FT_UInt32)(b) << 16 ) | \
510 ( (FT_UInt32)(c) << 8 ) | \
659 FT_ENC_TAG( FT_ENCODING_MS_SYMBOL,
's',
'y',
'm',
'b' ),
660 FT_ENC_TAG( FT_ENCODING_UNICODE,
'u',
'n',
'i',
'c' ),
662 FT_ENC_TAG( FT_ENCODING_SJIS,
's',
'j',
'i',
's' ),
663 FT_ENC_TAG( FT_ENCODING_GB2312,
'g',
'b',
' ',
' ' ),
664 FT_ENC_TAG( FT_ENCODING_BIG5,
'b',
'i',
'g',
'5' ),
665 FT_ENC_TAG( FT_ENCODING_WANSUNG,
'w',
'a',
'n',
's' ),
666 FT_ENC_TAG( FT_ENCODING_JOHAB,
'j',
'o',
'h',
'a' ),
675 FT_ENC_TAG( FT_ENCODING_ADOBE_STANDARD,
'A',
'D',
'O',
'B' ),
676 FT_ENC_TAG( FT_ENCODING_ADOBE_EXPERT,
'A',
'D',
'B',
'E' ),
677 FT_ENC_TAG( FT_ENCODING_ADOBE_CUSTOM,
'A',
'D',
'B',
'C' ),
678 FT_ENC_TAG( FT_ENCODING_ADOBE_LATIN_1,
'l',
'a',
't',
'1' ),
680 FT_ENC_TAG( FT_ENCODING_OLD_LATIN_2,
'l',
'a',
't',
'2' ),
682 FT_ENC_TAG( FT_ENCODING_APPLE_ROMAN,
'a',
'r',
'm',
'n' )
696 #define ft_encoding_none FT_ENCODING_NONE
697 #define ft_encoding_unicode FT_ENCODING_UNICODE
698 #define ft_encoding_symbol FT_ENCODING_MS_SYMBOL
699 #define ft_encoding_latin_1 FT_ENCODING_ADOBE_LATIN_1
700 #define ft_encoding_latin_2 FT_ENCODING_OLD_LATIN_2
701 #define ft_encoding_sjis FT_ENCODING_SJIS
702 #define ft_encoding_gb2312 FT_ENCODING_GB2312
703 #define ft_encoding_big5 FT_ENCODING_BIG5
704 #define ft_encoding_wansung FT_ENCODING_WANSUNG
705 #define ft_encoding_johab FT_ENCODING_JOHAB
707 #define ft_encoding_adobe_standard FT_ENCODING_ADOBE_STANDARD
708 #define ft_encoding_adobe_expert FT_ENCODING_ADOBE_EXPERT
709 #define ft_encoding_adobe_custom FT_ENCODING_ADOBE_CUSTOM
710 #define ft_encoding_apple_roman FT_ENCODING_APPLE_ROMAN
964 FT_Face_Internal
internal;
1069 #define FT_FACE_FLAG_SCALABLE ( 1L << 0 )
1070 #define FT_FACE_FLAG_FIXED_SIZES ( 1L << 1 )
1071 #define FT_FACE_FLAG_FIXED_WIDTH ( 1L << 2 )
1072 #define FT_FACE_FLAG_SFNT ( 1L << 3 )
1073 #define FT_FACE_FLAG_HORIZONTAL ( 1L << 4 )
1074 #define FT_FACE_FLAG_VERTICAL ( 1L << 5 )
1075 #define FT_FACE_FLAG_KERNING ( 1L << 6 )
1076 #define FT_FACE_FLAG_FAST_GLYPHS ( 1L << 7 )
1077 #define FT_FACE_FLAG_MULTIPLE_MASTERS ( 1L << 8 )
1078 #define FT_FACE_FLAG_GLYPH_NAMES ( 1L << 9 )
1079 #define FT_FACE_FLAG_EXTERNAL_STREAM ( 1L << 10 )
1080 #define FT_FACE_FLAG_HINTER ( 1L << 11 )
1081 #define FT_FACE_FLAG_CID_KEYED ( 1L << 12 )
1082 #define FT_FACE_FLAG_TRICKY ( 1L << 13 )
1098 #define FT_HAS_HORIZONTAL( face ) \
1099 ( face->face_flags & FT_FACE_FLAG_HORIZONTAL )
1112 #define FT_HAS_VERTICAL( face ) \
1113 ( face->face_flags & FT_FACE_FLAG_VERTICAL )
1126 #define FT_HAS_KERNING( face ) \
1127 ( face->face_flags & FT_FACE_FLAG_KERNING )
1141 #define FT_IS_SCALABLE( face ) \
1142 ( face->face_flags & FT_FACE_FLAG_SCALABLE )
1160 #define FT_IS_SFNT( face ) \
1161 ( face->face_flags & FT_FACE_FLAG_SFNT )
1175 #define FT_IS_FIXED_WIDTH( face ) \
1176 ( face->face_flags & FT_FACE_FLAG_FIXED_WIDTH )
1190 #define FT_HAS_FIXED_SIZES( face ) \
1191 ( face->face_flags & FT_FACE_FLAG_FIXED_SIZES )
1203 #define FT_HAS_FAST_GLYPHS( face ) 0
1216 #define FT_HAS_GLYPH_NAMES( face ) \
1217 ( face->face_flags & FT_FACE_FLAG_GLYPH_NAMES )
1231 #define FT_HAS_MULTIPLE_MASTERS( face ) \
1232 ( face->face_flags & FT_FACE_FLAG_MULTIPLE_MASTERS )
1249 #define FT_IS_CID_KEYED( face ) \
1250 ( face->face_flags & FT_FACE_FLAG_CID_KEYED )
1263 #define FT_IS_TRICKY( face ) \
1264 ( face->face_flags & FT_FACE_FLAG_TRICKY )
1289 #define FT_STYLE_FLAG_ITALIC ( 1 << 0 )
1290 #define FT_STYLE_FLAG_BOLD ( 1 << 1 )
1732 #define FT_OPEN_MEMORY 0x1
1733 #define FT_OPEN_STREAM 0x2
1734 #define FT_OPEN_PATHNAME 0x4
1735 #define FT_OPEN_DRIVER 0x8
1736 #define FT_OPEN_PARAMS 0x10
1738 #define ft_open_memory FT_OPEN_MEMORY
1739 #define ft_open_stream FT_OPEN_STREAM
1740 #define ft_open_pathname FT_OPEN_PATHNAME
1741 #define ft_open_driver FT_OPEN_DRIVER
1742 #define ft_open_params FT_OPEN_PARAMS
1870 const char* filepathname,
1992 const char* filepathname );
2232 FT_Size_Request req );
2344 FT_Int32 load_flags );
2379 FT_Int32 load_flags );
2511 #define FT_LOAD_DEFAULT 0x0
2512 #define FT_LOAD_NO_SCALE ( 1L << 0 )
2513 #define FT_LOAD_NO_HINTING ( 1L << 1 )
2514 #define FT_LOAD_RENDER ( 1L << 2 )
2515 #define FT_LOAD_NO_BITMAP ( 1L << 3 )
2516 #define FT_LOAD_VERTICAL_LAYOUT ( 1L << 4 )
2517 #define FT_LOAD_FORCE_AUTOHINT ( 1L << 5 )
2518 #define FT_LOAD_CROP_BITMAP ( 1L << 6 )
2519 #define FT_LOAD_PEDANTIC ( 1L << 7 )
2520 #define FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH ( 1L << 9 )
2521 #define FT_LOAD_NO_RECURSE ( 1L << 10 )
2522 #define FT_LOAD_IGNORE_TRANSFORM ( 1L << 11 )
2523 #define FT_LOAD_MONOCHROME ( 1L << 12 )
2524 #define FT_LOAD_LINEAR_DESIGN ( 1L << 13 )
2525 #define FT_LOAD_NO_AUTOHINT ( 1L << 15 )
2530 #define FT_LOAD_ADVANCE_ONLY ( 1L << 8 )
2531 #define FT_LOAD_SBITS_ONLY ( 1L << 14 )
2598 #define FT_LOAD_TARGET_( x ) ( (FT_Int32)( (x) & 15 ) << 16 )
2600 #define FT_LOAD_TARGET_NORMAL FT_LOAD_TARGET_( FT_RENDER_MODE_NORMAL )
2601 #define FT_LOAD_TARGET_LIGHT FT_LOAD_TARGET_( FT_RENDER_MODE_LIGHT )
2602 #define FT_LOAD_TARGET_MONO FT_LOAD_TARGET_( FT_RENDER_MODE_MONO )
2603 #define FT_LOAD_TARGET_LCD FT_LOAD_TARGET_( FT_RENDER_MODE_LCD )
2604 #define FT_LOAD_TARGET_LCD_V FT_LOAD_TARGET_( FT_RENDER_MODE_LCD_V )
2617 #define FT_LOAD_TARGET_MODE( x ) ( (FT_Render_Mode)( ( (x) >> 16 ) & 15 ) )
2735 #define ft_render_mode_normal FT_RENDER_MODE_NORMAL
2736 #define ft_render_mode_mono FT_RENDER_MODE_MONO
2803 #define ft_kerning_default FT_KERNING_DEFAULT
2815 #define ft_kerning_unfitted FT_KERNING_UNFITTED
2827 #define ft_kerning_unscaled FT_KERNING_UNSCALED
3040 FT_CharMap charmap );
3217 #define FT_SUBGLYPH_FLAG_ARGS_ARE_WORDS 1
3218 #define FT_SUBGLYPH_FLAG_ARGS_ARE_XY_VALUES 2
3219 #define FT_SUBGLYPH_FLAG_ROUND_XY_TO_GRID 4
3220 #define FT_SUBGLYPH_FLAG_SCALE 8
3221 #define FT_SUBGLYPH_FLAG_XY_SCALE 0x40
3222 #define FT_SUBGLYPH_FLAG_2X2 0x80
3223 #define FT_SUBGLYPH_FLAG_USE_MY_METRICS 0x200
3330 #define FT_FSTYPE_INSTALLABLE_EMBEDDING 0x0000
3331 #define FT_FSTYPE_RESTRICTED_LICENSE_EMBEDDING 0x0002
3332 #define FT_FSTYPE_PREVIEW_AND_PRINT_EMBEDDING 0x0004
3333 #define FT_FSTYPE_EDITABLE_EMBEDDING 0x0008
3334 #define FT_FSTYPE_NO_SUBSETTING 0x0100
3335 #define FT_FSTYPE_BITMAP_EMBEDDING_ONLY 0x0200
3681 #ifdef FT_MULFIX_INLINED
3682 #define FT_MulFix( a, b ) FT_MULFIX_INLINED( a, b )
3835 #define FREETYPE_MAJOR 2
3836 #define FREETYPE_MINOR 4
3837 #define FREETYPE_PATCH 9
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
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
GLboolean GLboolean GLboolean GLboolean a
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
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
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)
EGLContext EGLenum EGLClientBuffer buffer
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
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
EGLSurface EGLint void ** value
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)
GLdouble GLdouble GLdouble b
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)