26 #ifndef T1_CONFIG_OPTION_NO_AFM 30 #include FT_INTERNAL_DEBUG_H 31 #include FT_INTERNAL_STREAM_H 32 #include FT_INTERNAL_HASH_H 33 #include FT_INTERNAL_POSTSCRIPT_PROPS_H 36 #include FT_SERVICE_MULTIPLE_MASTERS_H 37 #include FT_SERVICE_GLYPH_DICT_H 38 #include FT_SERVICE_FONT_FORMAT_H 39 #include FT_SERVICE_POSTSCRIPT_NAME_H 40 #include FT_SERVICE_POSTSCRIPT_CMAPS_H 41 #include FT_SERVICE_POSTSCRIPT_INFO_H 42 #include FT_SERVICE_PROPERTIES_H 43 #include FT_SERVICE_KERNING_H 53 #define FT_COMPONENT trace_t1driver 79 for (
i = 0;
i <
face->type1.num_glyphs;
i++ )
107 return (
const char*)
face->type1.font_name;
122 #ifndef T1_CONFIG_OPTION_NO_MM_SUPPORT 178 *afont_private = ((
T1_Face)
face)->type1.private_dict;
202 if (
value && value_len >= retval )
213 retval =
sizeof (
val );
214 if (
value && value_len >= retval )
243 retval =
sizeof (
val );
244 if (
value && value_len >= retval )
268 if (
value && value_len >= retval )
274 if (
value && value_len >= retval )
280 if (
value && value_len >= retval )
286 if (
value && value_len >= retval )
294 if (
value && value_len >= retval )
306 if (
value && value_len >= retval )
317 if (
value && value_len >= retval )
326 if (
value && value_len >= retval )
337 if (
value && value_len >= retval )
368 if (
value && value_len >= retval )
379 if (
value && value_len >= retval )
385 if (
value && value_len >= retval )
391 if (
value && value_len >= retval )
396 if ( idx < type1->private_dict.num_blue_values )
399 if (
value && value_len >= retval )
406 if (
value && value_len >= retval )
412 if (
value && value_len >= retval )
418 if (
value && value_len >= retval )
424 if (
value && value_len >= retval )
429 if ( idx < type1->private_dict.num_other_blues )
432 if (
value && value_len >= retval )
439 if (
value && value_len >= retval )
444 if ( idx < type1->private_dict.num_family_blues )
447 if (
value && value_len >= retval )
454 if (
value && value_len >= retval )
459 if ( idx < type1->private_dict.num_family_other_blues )
462 if (
value && value_len >= retval )
469 if (
value && value_len >= retval )
474 if ( idx < type1->private_dict.num_snap_widths )
477 if (
value && value_len >= retval )
484 if (
value && value_len >= retval )
489 if ( idx < type1->private_dict.num_snap_heights )
492 if (
value && value_len >= retval )
499 if (
value && value_len >= retval )
505 if (
value && value_len >= retval )
514 if (
value && value_len >= retval )
521 if (
value && value_len >= retval )
527 if (
value && value_len >= retval )
533 if (
value && value_len >= retval )
538 retval =
sizeof ( type1->
font_info.is_fixed_pitch );
539 if (
value && value_len >= retval )
544 retval =
sizeof ( type1->
font_info.underline_position );
545 if (
value && value_len >= retval )
550 retval =
sizeof ( type1->
font_info.underline_thickness );
551 if (
value && value_len >= retval )
557 if (
value && value_len >= retval )
563 if (
value && value_len >= retval )
569 if (
value && value_len >= retval )
575 if (
value && value_len >= retval )
581 if (
value && value_len >= retval )
587 if (
value && value_len >= retval )
592 retval =
sizeof ( type1->
font_info.italic_angle );
593 if (
value && value_len >= retval )
598 return retval == 0 ? -1 : (
FT_Long)retval;
612 #ifndef T1_CONFIG_OPTION_NO_AFM 626 t1_service_properties,
645 #ifndef T1_CONFIG_OPTION_NO_AFM 649 #ifndef T1_CONFIG_OPTION_NO_MM_SUPPORT 666 #ifndef T1_CONFIG_OPTION_NO_AFM 712 if (
face->afm_data )
759 #ifdef T1_CONFIG_OPTION_NO_AFM
FT_DEFINE_SERVICE_PROPERTIESREC(t1_service_properties,(FT_Properties_SetFunc) ps_property_set,(FT_Properties_GetFunc) ps_property_get) static const FT_ServiceDescRec t1_services[]
#define FT_SERVICE_ID_MULTI_MASTERS
struct T1_GlyphSlotRec_ T1_GlyphSlotRec
ft_service_list_lookup(FT_ServiceDesc service_descriptors, const char *service_id)
PS_PrivateRec private_dict
T1_EncodingType encoding_type
enum PS_Dict_Keys_ PS_Dict_Keys
struct T1_FaceRec_ * T1_Face
FT_UInt FT_UInt right_glyph
T1_Size_Done(FT_Size t1size)
#define FT_FONT_FORMAT_TYPE_1
FT_Properties_SetFunc ps_property_set
T1_Load_Glyph(FT_GlyphSlot t1glyph, FT_Size t1size, FT_UInt glyph_index, FT_Int32 load_flags)
T1_GlyphSlot_Init(FT_GlyphSlot slot)
FT_Error(* FT_Set_MM_Design_Func)(FT_Face face, FT_UInt num_coords, FT_Long *coords)
FT_Properties_SetFunc FT_Properties_GetFunc ps_property_get FT_SERVICE_ID_POSTSCRIPT_FONT_NAME
FT_Byte num_family_other_blues
T1_Set_MM_Blend(T1_Face face, FT_UInt num_coords, FT_Fixed *coords)
Get_Interface(FT_Module module, const FT_String *t1_interface)
T1_Face_Init(FT_Stream stream, FT_Face t1face, FT_Int face_index, FT_Int num_params, FT_Parameter *params)
#define FT_SERVICE_ID_FONT_FORMAT
size_t * ft_hash_num_lookup(FT_Int num, FT_Hash hash)
static const FT_Service_GlyphDictRec t1_service_glyph_dict
static FT_Long t1_ps_get_font_value(FT_Face face, PS_Dict_Keys key, FT_UInt idx, void *value, FT_Long value_len_)
#define FT_MODULE_DRIVER_SCALABLE
static const FT_Service_PsInfoRec t1_service_ps_info
static const FT_Service_KerningRec t1_service_kerning
static FT_Error t1_ps_get_font_extra(FT_Face face, PS_FontExtraRec *afont_extra)
T1_Set_Var_Design(T1_Face face, FT_UInt num_coords, FT_Fixed *coords)
FT_UInt * charstrings_len
struct T1_FaceRec_ T1_FaceRec
static const FT_Service_PsFontNameRec t1_service_ps_name
T1_Face_Done(FT_Face t1face)
FT_BEGIN_HEADER typedef unsigned char FT_Bool
FT_Error(* FT_Properties_SetFunc)(FT_Module module, const char *property_name, const void *value, FT_Bool value_is_string)
void(* FT_Done_Blend_Func)(FT_Face)
T1_Get_MM_Blend(T1_Face face, FT_UInt num_coords, FT_Fixed *coords)
FT_CALLBACK_TABLE_DEF const FT_Driver_ClassRec t1_driver_class
T1_Set_MM_Design(T1_Face face, FT_UInt num_coords, FT_Long *coords)
FT_Error(* FT_Get_Var_Blend_Func)(FT_Face face, FT_UInt *num_coords, FT_Fixed **coords, FT_Fixed **normalizedcoords, FT_MM_Var **mm_var)
T1_Size_Init(FT_Size t1size)
FT_UShort standard_height[1]
#define FT_MODULE_DRIVER_HAS_HINTER
FT_Error(* FT_Set_Instance_Func)(FT_Face face, FT_UInt instance_index)
T1_Driver_Done(FT_Module driver)
FT_Long(* PS_GetFontValueFunc)(FT_Face face, PS_Dict_Keys key, FT_UInt idx, void *value, FT_Long value_len)
static FT_Int t1_ps_has_glyph_names(FT_Face face)
FT_UInt(* FT_GlyphDict_NameIndexFunc)(FT_Face face, FT_String *glyph_name)
static const FT_Service_MultiMastersRec t1_service_multi_masters
FT_UShort standard_width[1]
FT_Error(* FT_Set_Var_Design_Func)(FT_Face face, FT_UInt num_coords, FT_Fixed *coords)
FT_BEGIN_HEADER struct PS_DriverRec_ PS_DriverRec
enum T1_EncodingType_ T1_EncodingType
static FT_Error t1_ps_get_font_info(FT_Face face, PS_FontInfoRec *afont_info)
T1_Read_Metrics(FT_Face t1_face, FT_Stream stream)
FT_Error(* FT_Set_MM_Blend_Func)(FT_Face face, FT_UInt num_coords, FT_Long *coords)
#define FT_CALLBACK_DEF(x)
#define FT_MODULE_FONT_DRIVER
FT_Error(* PS_GetFontExtraFunc)(FT_Face face, PS_FontExtraRec *afont_extra)
PS_FontExtraRec font_extra
T1_Done_Blend(T1_Face face)
static FT_UInt t1_get_name_index(T1_Face face, FT_String *glyph_name)
FT_Short family_other_blues[10]
#define FT_SERVICE_ID_KERNING
const char *(* FT_PsName_GetFunc)(FT_Face face)
static FT_Error Get_Kerning(FT_Face t1face, FT_UInt left_glyph, FT_UInt right_glyph, FT_Vector *kerning)
static FT_Error t1_ps_get_font_private(FT_Face face, PS_PrivateRec *afont_private)
T1_Reset_MM_Blend(T1_Face face, FT_UInt instance_index)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
T1_Get_MM_Var(T1_Face face, FT_MM_Var **master)
FT_Error(* FT_Get_MM_Func)(FT_Face face, FT_Multi_Master *master)
T1_Size_Request(FT_Size t1size, FT_Size_Request req)
T1_Get_Advances(FT_Face t1face, FT_UInt first, FT_UInt count, FT_Int32 load_flags, FT_Fixed *advances)
FT_Properties_SetFunc FT_Properties_GetFunc ps_property_get FT_SERVICE_ID_GLYPH_DICT
FT_BEGIN_HEADER struct PS_FontInfoRec_ PS_FontInfoRec
FT_Short snap_heights[13]
FT_Error(* FT_Properties_GetFunc)(FT_Module module, const char *property_name, void *value)
T1_GlyphSlot_Done(FT_GlyphSlot slot)
FT_Int(* PS_HasGlyphNamesFunc)(FT_Face face)
FT_Error(* PS_GetFontPrivateFunc)(FT_Face face, PS_PrivateRec *afont_private)
#define FT_STRCPYN(dst, src, size)
T1_Get_Var_Design(T1_Face face, FT_UInt num_coords, FT_Fixed *coords)
T1_Get_Track_Kerning(FT_Face face, FT_Fixed ptsize, FT_Int degree, FT_Fixed *kerning)
T1_Get_Multi_Master(T1_Face face, FT_Multi_Master *master)
T1_Get_Kerning(AFM_FontInfo fi, FT_UInt glyph1, FT_UInt glyph2, FT_Vector *kerning)
FT_Error(* FT_GlyphDict_GetNameFunc)(FT_Face face, FT_UInt glyph_index, FT_Pointer buffer, FT_UInt buffer_max)
FT_Error(* FT_Get_MM_Var_Func)(FT_Face face, FT_MM_Var **master)
FT_Error(* PS_GetFontInfoFunc)(FT_Face face, PS_FontInfoRec *afont_info)
static FT_Error t1_get_glyph_name(T1_Face face, FT_UInt glyph_index, FT_Pointer buffer, FT_UInt buffer_max)
#define FT_SERVICE_ID_PROPERTIES
FT_UInt FT_UInt FT_Vector * kerning
static const char * t1_get_ps_name(T1_Face face)
FT_Properties_SetFunc FT_Properties_GetFunc ps_property_get FT_SERVICE_ID_POSTSCRIPT_INFO
FT_Short family_blues[14]
GLenum GLuint GLint GLenum face
T1_Driver_Init(FT_Module module)
#define FT_CALLBACK_TABLE_DEF
ps_property_get(FT_Module module, const char *property_name, void *value)
FT_Error(* FT_Get_MM_Blend_Func)(FT_Face face, FT_UInt num_coords, FT_Long *coords)
FT_Error(* FT_Get_Var_Design_Func)(FT_Face face, FT_UInt num_coords, FT_Fixed *coords)