> > But both caching and rendering happens outside of FreeType, right? >
Yes, in the hooks. > > Also, the cache structure must be unique for each instance of > > FT_Library, so making it a global variable may not work. > > Yep. Additionally, it wouldn't be thread-safe. > Exactly. > What about something like the following. > > typedef FT_Error > (*SVG_Lib_Init_Func)( void* data ) > > typedef void > (*SVG_Lib_Free_Func)( void* data ); > > typedef FT_Error > (*SVG_Lib_Render_Func)( FT_GlyphSlot slot, > void* data ); > > typedef FT_Error > (*SVG_Lib_Preset_Slot_Func)( FT_GlyphSlot slot, > void* data, > FT_Bool cache ); > Umm, I have a similar thing in mind. Let me try it tomorrow morning and I'll let you know.
