diff options
author | David Turner <david@freetype.org> | 2006-02-21 22:36:23 +0000 |
---|---|---|
committer | David Turner <david@freetype.org> | 2006-02-21 22:36:23 +0000 |
commit | 0b5dc4df888df9006e4544219c7866d53af28150 (patch) | |
tree | b559019d0714666b54d12f3b36648a9b97a3ceb0 /include/freetype | |
parent | 44c865dfe180022a9400854904384442048cd38c (diff) | |
download | freetype2-0b5dc4df888df9006e4544219c7866d53af28150.tar.gz |
* include/freetype/ftmodapi.h, include/internal/ftserv.h,
include/internal/services/svtteng.h, src/base/ftobjs.c,
src/truetype/ttdriver.c:
adding a new API named FT_Get_TrueType_Engine_Type to determine
wether we have a patented, unpatented or unimplemented TrueType
bytecode interpreter.
the FT_Get_Module_Flags API was removed consequently.
Diffstat (limited to 'include/freetype')
-rw-r--r-- | include/freetype/config/ftoption.h | 2 | ||||
-rw-r--r-- | include/freetype/ftmodapi.h | 79 | ||||
-rw-r--r-- | include/freetype/internal/ftserv.h | 1 | ||||
-rw-r--r-- | include/freetype/internal/services/svsfnt.h | 8 |
4 files changed, 62 insertions, 28 deletions
diff --git a/include/freetype/config/ftoption.h b/include/freetype/config/ftoption.h index bb1bbee6f..28e82e28a 100644 --- a/include/freetype/config/ftoption.h +++ b/include/freetype/config/ftoption.h @@ -448,7 +448,7 @@ FT_BEGIN_HEADER /* FT_PARAM_TAG_UNPATENTED_HINTING; or when the debug hook */ /* FT_DEBUG_HOOK_UNPATENTED_HINTING is globally activated. */ /* */ -#define TT_CONFIG_OPTION_UNPATENTED_HINTING +#define xxTT_CONFIG_OPTION_UNPATENTED_HINTING /*************************************************************************/ diff --git a/include/freetype/ftmodapi.h b/include/freetype/ftmodapi.h index 6f257940a..6f4177918 100644 --- a/include/freetype/ftmodapi.h +++ b/include/freetype/ftmodapi.h @@ -84,7 +84,7 @@ FT_BEGIN_HEADER typedef void (*FT_Module_Destructor)( FT_Module module ); - typedef FT_Module_Interface + typedef FT_Module_Interface (*FT_Module_Requester)( FT_Module module, const char* name ); @@ -216,28 +216,6 @@ FT_BEGIN_HEADER /*************************************************************************/ /* */ /* <Function> */ - /* FT_Module_Get_Flags */ - /* */ - /* <Description> */ - /* Gets the module flags for a given module. */ - /* */ - /* <Input> */ - /* module :: A handle to a module object. */ - /* */ - /* <Output> */ - /* flags :: The module's flags. */ - /* */ - /* <Return> */ - /* FreeType error code. 0 means success. */ - /* */ - FT_EXPORT( FT_Error ) - FT_Module_Get_Flags( FT_Module module, - FT_ULong* flags ); - - - /*************************************************************************/ - /* */ - /* <Function> */ /* FT_New_Library */ /* */ /* <Description> */ @@ -329,6 +307,61 @@ FT_BEGIN_HEADER FT_Add_Default_Modules( FT_Library library ); + /** + * @enum: FT_TrueTypeEngineType + * + * @description: + * a list of values describing which kind of truetype bytecode + * engine is implemented in a given FT_Library instance. It is used + * by the @FT_Get_TrueType_Engine_Type function + * + * @values: + * FT_TRUETYPE_ENGINE_TYPE_NONE :: + * the library doesn't implement any kind of bytecode interpreter + * + * FT_TRUETYPE_ENGINE_TYPE_UNPATENTED :: + * the library implements a bytecode interpreter that doesn't + * support the patented operations of the TrueType virtual machine. + * + * this interpreter can only be used to load certain Asian fonts + * from Dynalabs. It will produce crap output for any other font. + * see @ + * + * FT_TRUETYPE_ENGINE_TYPE_PATENTED :: + * the library implements a bytecode interpreter that covers + * the full instruction set of the TrueType virtual machine. + * Better check your legal department for license compliance !! + * + * @since: 2.2 + */ + typedef enum + { + FT_TRUETYPE_ENGINE_TYPE_NONE = 0, + FT_TRUETYPE_ENGINE_TYPE_UNPATENTED, + FT_TRUETYPE_ENGINE_TYPE_PATENTED + + } FT_TrueTypeEngineType; + + + /** + * @func: FT_Get_TrueType_Engine_Type + * + * @description: + * this function returns a @FT_TrueTypeEngineType value to indicates + * which level of the TrueType virtual machine a given library instance + * supports. + * + * @input: + * library :: a library instance + * + * @return: + * a value indicating which level is supported + * + * @since: 2.2 + */ + FT_EXPORT( FT_TrueTypeEngineType ) + FT_Get_TrueType_Engine_Type( FT_Library library ); + /* */ diff --git a/include/freetype/internal/ftserv.h b/include/freetype/internal/ftserv.h index 3e812703d..aaadf0159 100644 --- a/include/freetype/internal/ftserv.h +++ b/include/freetype/internal/ftserv.h @@ -314,6 +314,7 @@ FT_BEGIN_HEADER #define FT_SERVICE_WINFNT_H <freetype/internal/services/svwinfnt.h> #define FT_SERVICE_XFREE86_NAME_H <freetype/internal/services/svxf86nm.h> #define FT_SERVICE_KERNING_H <freetype/internal/services/svkern.h> +#define FT_SERVICE_TRUETYPE_ENGINE_H <freetype/internal/services/svtteng.h> /* */ diff --git a/include/freetype/internal/services/svsfnt.h b/include/freetype/internal/services/svsfnt.h index 87346c6d0..123008ea1 100644 --- a/include/freetype/internal/services/svsfnt.h +++ b/include/freetype/internal/services/svsfnt.h @@ -63,14 +63,14 @@ FT_BEGIN_HEADER FT_DEFINE_SERVICE( SFNT_Table ) { - FT_SFNT_TableLoadFunc load_table; - FT_SFNT_TableGetFunc get_table; - FT_SFNT_TableInfoFunc table_info; + FT_SFNT_TableLoadFunc load_table; + FT_SFNT_TableGetFunc get_table; + FT_SFNT_TableInfoFunc table_info; }; /* */ - + FT_END_HEADER |