forked from minhngoc25a/freetype2
Memory allocation for `state' of renderer should be performed
on the SVG port side not the FT size. Minor doc fixes.
This commit is contained in:
parent
cf44c0cbdd
commit
fbdd9f9ba3
|
@ -39,7 +39,7 @@ FT_BEGIN_HEADER
|
|||
* A callback used to initiate the SVG Rendering port
|
||||
*
|
||||
* @input:
|
||||
* library::
|
||||
* library ::
|
||||
* A instance of library. This is required to initialize the renderer's
|
||||
* state which will be held in the library.
|
||||
*
|
||||
|
@ -62,7 +62,7 @@ FT_BEGIN_HEADER
|
|||
* shall do all cleanups that the SVG Rendering port wants to do.
|
||||
*
|
||||
* @input:
|
||||
* library::
|
||||
* library ::
|
||||
* A instance of library. This is required to free the renderer's state
|
||||
* which will be held in the library.
|
||||
*/
|
||||
|
@ -95,22 +95,6 @@ FT_BEGIN_HEADER
|
|||
(*SVG_Lib_Render)( FT_GlyphSlot slot,
|
||||
FT_BBox outline_bbox);
|
||||
|
||||
/**************************************************************************
|
||||
*
|
||||
* @functype:
|
||||
* SVG_Lib_Get_State_Size
|
||||
*
|
||||
* @description:
|
||||
* A callback which is called to query the size of the state stucture.
|
||||
* This is used for allocating the state structure in library.
|
||||
*
|
||||
* @return:
|
||||
* Size of the state structure in bytes.
|
||||
*/
|
||||
|
||||
typedef FT_UInt
|
||||
(*SVG_Lib_Get_State_Size)( );
|
||||
|
||||
/**************************************************************************
|
||||
*
|
||||
* @functype:
|
||||
|
@ -149,26 +133,22 @@ FT_BEGIN_HEADER
|
|||
* Interface.
|
||||
*
|
||||
* @input:
|
||||
* module::
|
||||
* module ::
|
||||
* FT_Module instance.
|
||||
*
|
||||
* init_hook::
|
||||
* init_hook ::
|
||||
* A function pointer of the type `SVG_Lib_Init'. Read the documentation
|
||||
* of `SVG_Lib_Init'
|
||||
*
|
||||
* free_hook::
|
||||
* free_hook ::
|
||||
* A function pointer of the type `SVG_Lib_Free'. Read the documentation
|
||||
* of `SVG_Lib_Free'.
|
||||
*
|
||||
* render_hook::
|
||||
* render_hook ::
|
||||
* A function pointer of the type `SVG_Lib_Render'. Read the
|
||||
* documentation of `SVG_Lib_Render'.
|
||||
*
|
||||
* get_state_size::
|
||||
* A function pointer of the type `SVG_Lib_Get_State_Size'. Read the
|
||||
* documentation of `SVG_Lib_Get_State_Size'.
|
||||
*
|
||||
* get_buffer_size::
|
||||
* get_buffer_size ::
|
||||
* A function pointer of the type `SVG_Lib_Get_Buffer_Size'. Read the
|
||||
* documentation of `SVG_Lib_Get_Buffer_Size'.
|
||||
*
|
||||
|
@ -181,7 +161,6 @@ FT_BEGIN_HEADER
|
|||
SVG_Lib_Init init_hook,
|
||||
SVG_Lib_Free free_hook,
|
||||
SVG_Lib_Render render_hook,
|
||||
SVG_Lib_Get_State_Size get_state_size,
|
||||
SVG_Lib_Get_Buffer_Size get_buffer_size );
|
||||
|
||||
/**************************************************************************
|
||||
|
@ -194,7 +173,7 @@ FT_BEGIN_HEADER
|
|||
* rendering library hooks.
|
||||
*
|
||||
* @fields:
|
||||
* set_hooks::
|
||||
* set_hooks ::
|
||||
* A function that can be called to set the hooks.
|
||||
*
|
||||
* @return:
|
||||
|
@ -213,7 +192,6 @@ FT_BEGIN_HEADER
|
|||
SVG_Lib_Init init_hook,
|
||||
SVG_Lib_Free free_hook,
|
||||
SVG_Lib_Render render_hook,
|
||||
SVG_Lib_Get_State_Size get_state_size,
|
||||
SVG_Lib_Get_Buffer_Size get_buffer_size );
|
||||
|
||||
/**************************************************************************
|
||||
|
|
|
@ -5596,7 +5596,6 @@
|
|||
SVG_Lib_Init init_hook,
|
||||
SVG_Lib_Free free_hook,
|
||||
SVG_Lib_Render render_hook,
|
||||
SVG_Lib_Get_State_Size get_state_size,
|
||||
SVG_Lib_Get_Buffer_Size get_buffer_size )
|
||||
{
|
||||
FT_Module renderer;
|
||||
|
@ -5614,7 +5613,6 @@
|
|||
init_hook,
|
||||
free_hook,
|
||||
render_hook,
|
||||
get_state_size,
|
||||
get_buffer_size );
|
||||
return FT_Err_Ok;
|
||||
}
|
||||
|
|
|
@ -36,10 +36,8 @@
|
|||
ft_svg_done( SVG_Renderer svg_module )
|
||||
{
|
||||
FT_Library library = svg_module->root.root.library;
|
||||
FT_Memory memory = library->memory;
|
||||
if ( svg_module->loaded == TRUE )
|
||||
svg_module->hooks.svg_lib_free( library );
|
||||
FT_FREE( library->svg_renderer_state );
|
||||
svg_module->loaded = FALSE;
|
||||
}
|
||||
|
||||
|
@ -54,17 +52,13 @@
|
|||
FT_Memory memory = library->memory;
|
||||
FT_BBox outline_bbox;
|
||||
FT_Error error;
|
||||
FT_ULong size_image_buffer;
|
||||
|
||||
SVG_RendererHooks hooks = svg_renderer->hooks;
|
||||
|
||||
unsigned long size_image_buffer;
|
||||
|
||||
if ( svg_renderer->loaded == FALSE )
|
||||
{
|
||||
FT_MEM_ALLOC( library->svg_renderer_state,
|
||||
hooks.svg_lib_get_state_size() );
|
||||
if ( error )
|
||||
return error;
|
||||
error = hooks.svg_lib_init( library );
|
||||
svg_renderer->loaded = TRUE;
|
||||
}
|
||||
|
@ -88,7 +82,6 @@
|
|||
SVG_Lib_Init init_hook,
|
||||
SVG_Lib_Free free_hook,
|
||||
SVG_Lib_Render render_hook,
|
||||
SVG_Lib_Get_State_Size get_state_size,
|
||||
SVG_Lib_Get_Buffer_Size get_buffer_size )
|
||||
{
|
||||
SVG_Renderer renderer;
|
||||
|
@ -98,7 +91,6 @@
|
|||
renderer->hooks.svg_lib_free = free_hook;
|
||||
renderer->hooks.svg_lib_render = render_hook;
|
||||
|
||||
renderer->hooks.svg_lib_get_state_size = get_state_size;
|
||||
renderer->hooks.svg_lib_get_buffer_size = get_buffer_size;
|
||||
|
||||
return FT_Err_Ok;
|
||||
|
|
|
@ -28,7 +28,6 @@
|
|||
SVG_Lib_Free svg_lib_free;
|
||||
SVG_Lib_Render svg_lib_render;
|
||||
|
||||
SVG_Lib_Get_State_Size svg_lib_get_state_size;
|
||||
SVG_Lib_Get_Buffer_Size svg_lib_get_buffer_size;
|
||||
} SVG_RendererHooks;
|
||||
|
||||
|
|
Loading…
Reference in New Issue