20 #include FT_INTERNAL_DEBUG_H 22 #include FT_ADVANCES_H 23 #include FT_INTERNAL_OBJECTS_H 40 return FT_THROW( Invalid_Size_Handle );
50 for ( nn = 0; nn <
count; nn++ )
51 advances[nn] =
FT_MulDiv( advances[nn], scale, 64 );
64 #define LOAD_ADVANCE_FAST_CHECK( flags ) \ 65 ( flags & ( FT_LOAD_NO_SCALE | FT_LOAD_NO_HINTING ) || \ 66 FT_LOAD_TARGET_MODE( flags ) == FT_RENDER_MODE_LIGHT ) 81 return FT_THROW( Invalid_Face_Handle );
83 if ( gindex >= (
FT_UInt)face->num_glyphs )
84 return FT_THROW( Invalid_Glyph_Index );
86 func = face->driver->clazz->get_advances;
92 error =
func( face, gindex, 1, flags, padvance );
94 return _ft_face_scale_advances( face, padvance, 1, flags );
96 if (
FT_ERR_NEQ( error, Unimplemented_Feature ) )
119 return FT_THROW( Invalid_Face_Handle );
121 num = (
FT_UInt)face->num_glyphs;
124 return FT_THROW( Invalid_Glyph_Index );
129 func = face->driver->clazz->get_advances;
132 error =
func( face, start, count, flags, padvances );
134 return _ft_face_scale_advances( face, padvances, count, flags );
136 if (
FT_ERR_NEQ( error, Unimplemented_Feature ) )
143 return FT_THROW( Unimplemented_Feature );
146 for ( nn = 0; nn <
count; nn++ )
154 ? face->glyph->advance.y << 10
155 : face->glyph->advance.x << 10;
#define FT_LOAD_VERTICAL_LAYOUT
GLenum GLenum GLenum GLenum GLenum scale
return FT_THROW(Missing_Property)
#define LOAD_ADVANCE_FAST_CHECK(flags)
#define FT_LOAD_ADVANCE_ONLY
GLenum GLuint GLint GLenum face
FT_Load_Glyph(FT_Face face, FT_UInt glyph_index, FT_Int32 load_flags)
FT_Get_Advances(FT_Face face, FT_UInt start, FT_UInt count, FT_Int32 flags, FT_Fixed *padvances)
FT_MulDiv(FT_Long a, FT_Long b, FT_Long c)
#define FT_ADVANCE_FLAG_FAST_ONLY
FT_Error(* FT_Face_GetAdvancesFunc)(FT_Face face, FT_UInt first, FT_UInt count, FT_Int32 flags, FT_Fixed *advances)
if(!abbox) return FT_THROW(Invalid_Argument)
FT_Get_Advance(FT_Face face, FT_UInt gindex, FT_Int32 flags, FT_Fixed *padvance)
GLuint GLuint GLsizei count