* include/freetype/freetype.h, src/base/ftpatent.c: adding
FT_Face_SetUnpatentedHinting to dynamically change the setting after a face is created.
This commit is contained in:
parent
0ba8991292
commit
481b25f009
@ -1,5 +1,9 @@
|
||||
2007-07-01 David Turner <david@freetype.org>
|
||||
|
||||
* include/freetype/freetype.h, src/base/ftpatent.c: adding
|
||||
FT_Face_SetUnpatentedHinting to dynamically change the setting
|
||||
after a face is created.
|
||||
|
||||
* src/truetype/ttgload.c: fix a small bug that created distortions
|
||||
in the bytecode interpreter results
|
||||
|
||||
|
@ -3389,9 +3389,37 @@ FT_BEGIN_HEADER
|
||||
/* 1 if this is a TrueType font that uses one of the patented */
|
||||
/* opcodes, 0 otherwise. */
|
||||
/* */
|
||||
/* <Since> 2.3.5 */
|
||||
/* */
|
||||
FT_EXPORT( FT_Bool )
|
||||
FT_Face_CheckTrueTypePatents( FT_Face face );
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Function> */
|
||||
/* FT_Face_SetUnpatentedHinting */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* 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 the */
|
||||
/* this instance of the library. */
|
||||
/* */
|
||||
/* <Since> 2.3.5 */
|
||||
/* */
|
||||
FT_EXPORT( FT_Bool )
|
||||
FT_Face_SetUnpatentedHinting( FT_Face face,
|
||||
FT_Bool value );
|
||||
|
||||
/* */
|
||||
|
||||
|
||||
|
@ -246,7 +246,7 @@
|
||||
{
|
||||
FT_Bool result = FALSE;
|
||||
|
||||
|
||||
|
||||
if ( face && FT_IS_SFNT( face ) )
|
||||
result = _tt_face_check_patents( face );
|
||||
|
||||
@ -254,4 +254,25 @@
|
||||
}
|
||||
|
||||
|
||||
FT_EXPORT_DEF( FT_Bool )
|
||||
FT_Face_SetUnpatentedHinting( FT_Face face,
|
||||
FT_Bool value )
|
||||
{
|
||||
FT_Bool result = 0;
|
||||
|
||||
#if defined(TT_CONFIG_OPTION_UNPATENTED_HINTING) && \
|
||||
!defined(TT_CONFIG_OPTION_BYTECODE_INTEPRETER)
|
||||
if ( face && FT_IS_SFNT(face) )
|
||||
{
|
||||
result = !face->internal->ignore_unpatented_hinter;
|
||||
face->internal->ignore_unpatented_hinter = !value;
|
||||
}
|
||||
#else
|
||||
FT_UNUSED(face);
|
||||
FT_UNUSED(value);
|
||||
#endif
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/* END */
|
||||
|
Loading…
Reference in New Issue
Block a user