michael@0: /***************************************************************************/ michael@0: /* */ michael@0: /* ftsynth.h */ michael@0: /* */ michael@0: /* FreeType synthesizing code for emboldening and slanting */ michael@0: /* (specification). */ michael@0: /* */ michael@0: /* Copyright 2000-2001, 2003, 2006, 2008, 2012, 2013 by */ michael@0: /* David Turner, Robert Wilhelm, and Werner Lemberg. */ michael@0: /* */ michael@0: /* This file is part of the FreeType project, and may only be used, */ michael@0: /* modified, and distributed under the terms of the FreeType project */ michael@0: /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ michael@0: /* this file you indicate that you have read the license and */ michael@0: /* understand and accept it fully. */ michael@0: /* */ michael@0: /***************************************************************************/ michael@0: michael@0: michael@0: /*************************************************************************/ michael@0: /*************************************************************************/ michael@0: /*************************************************************************/ michael@0: /*************************************************************************/ michael@0: /*************************************************************************/ michael@0: /********* *********/ michael@0: /********* WARNING, THIS IS ALPHA CODE! THIS API *********/ michael@0: /********* IS DUE TO CHANGE UNTIL STRICTLY NOTIFIED BY THE *********/ michael@0: /********* FREETYPE DEVELOPMENT TEAM *********/ michael@0: /********* *********/ michael@0: /*************************************************************************/ michael@0: /*************************************************************************/ michael@0: /*************************************************************************/ michael@0: /*************************************************************************/ michael@0: /*************************************************************************/ michael@0: michael@0: michael@0: /* Main reason for not lifting the functions in this module to a */ michael@0: /* `standard' API is that the used parameters for emboldening and */ michael@0: /* slanting are not configurable. Consider the functions as a */ michael@0: /* code resource that should be copied into the application and */ michael@0: /* adapted to the particular needs. */ michael@0: michael@0: michael@0: #ifndef __FTSYNTH_H__ michael@0: #define __FTSYNTH_H__ michael@0: michael@0: michael@0: #include michael@0: #include FT_FREETYPE_H michael@0: michael@0: #ifdef FREETYPE_H michael@0: #error "freetype.h of FreeType 1 has been loaded!" michael@0: #error "Please fix the directory search order for header files" michael@0: #error "so that freetype.h of FreeType 2 is found first." michael@0: #endif michael@0: michael@0: michael@0: FT_BEGIN_HEADER michael@0: michael@0: /* Embolden a glyph by a `reasonable' value (which is highly a matter of */ michael@0: /* taste). This function is actually a convenience function, providing */ michael@0: /* a wrapper for @FT_Outline_Embolden and @FT_Bitmap_Embolden. */ michael@0: /* */ michael@0: /* For emboldened outlines the height, width, and advance metrics are */ michael@0: /* increased by the strength of the emboldening. You can also call */ michael@0: /* @FT_Outline_Get_CBox to get precise values. */ michael@0: FT_EXPORT( void ) michael@0: FT_GlyphSlot_Embolden( FT_GlyphSlot slot ); michael@0: michael@0: /* Slant an outline glyph to the right by about 12 degrees. */ michael@0: FT_EXPORT( void ) michael@0: FT_GlyphSlot_Oblique( FT_GlyphSlot slot ); michael@0: michael@0: /* */ michael@0: michael@0: FT_END_HEADER michael@0: michael@0: #endif /* __FTSYNTH_H__ */ michael@0: michael@0: michael@0: /* END */