# FreeType-2.3.6 API Reference

# FreeType Version

## Synopsis

| FREETYPE_XXX |  | FT_Face_CheckTrueTypePatents
| FT_Library_Version |  | FT_Face_SetUnpatentedHinting

Note that those functions and macros are of limited use because even a new release of FreeType with only documentation changes increases the version number.

#### FREETYPE_XXX
Defined in FT_FREETYPE_H (freetype/freetype.h).
    #define FREETYPE_MAJOR  2
    #define FREETYPE_MINOR  3
    #define FREETYPE_PATCH  6
These three macros identify the FreeType source code version. Use FT_Library_Version to access them at runtime.
values
FREETYPE_MAJOR | The major version number.
FREETYPE_MINOR | The minor version number.
FREETYPE_PATCH | The patch level.
note
The version number of FreeType if built as a dynamic link library with the ‘libtool’ package is not controlled by these three macros.

[Index] |  | [TOC]

#### FT_Library_Version
Defined in FT_FREETYPE_H (freetype/freetype.h).
      FT_EXPORT( void )
      FT_Library_Version( FT_Library   library,
                          FT_Int      *amajor,
                          FT_Int      *aminor,
                          FT_Int      *apatch );
Return the version of the FreeType library being used. This is useful when dynamically linking to the library, since one cannot use the macros FREETYPE_MAJOR, FREETYPE_MINOR, and FREETYPE_PATCH.
input
library | A source library handle.
output
amajor | The major version number.
aminor | The minor version number.
apatch | The patch version number.
note
The reason why this function takes a ‘library’ argument is because certain programs implement library initialization in a custom way that doesn't use FT_Init_FreeType. In such cases, the library version might not be available before the library object has been created.

[Index] |  | [TOC]

#### FT_Face_CheckTrueTypePatents
Defined in FT_FREETYPE_H (freetype/freetype.h).
      FT_EXPORT( FT_Bool )
      FT_Face_CheckTrueTypePatents( FT_Face  face );
Parse all bytecode instructions of a TrueType font file to check whether any of the patented opcodes are used. This is only useful if you want to be able to use the unpatented hinter with fonts that do not use these opcodes. Note that this function parses all glyph instructions in the font file, which may be slow.
input
face | A face handle.
return
1 if this is a TrueType font that uses one of the patented opcodes, 0 otherwise.
since
2.3.5

[Index] |  | [TOC]

#### FT_Face_SetUnpatentedHinting
Defined in FT_FREETYPE_H (freetype/freetype.h).
      FT_EXPORT( FT_Bool )
      FT_Face_SetUnpatentedHinting( FT_Face  face,
                                    FT_Bool  value );
Enable or disable the unpatented hinter for a given face. Only enable it if you have determined that the face doesn't use any patented opcodes (see FT_Face_CheckTrueTypePatents).
input
face | A face handle.
value | New boolean setting.
return
The old setting value. This will always be false if this is not a SFNT font, or if the unpatented hinter is not compiled in this instance of the library.
since
2.3.5

[Index] |  | [TOC]