FreeType » Docs » Format-Specific API » Gasp Table
Gasp Table¶
Synopsis¶
The function FT_Get_Gasp
can be used to query a TrueType or OpenType font for specific entries in its ‘gasp’ table, if any. This is mainly useful when implementing native TrueType hinting with the bytecode interpreter to duplicate the Windows text rendering results.
FT_GASP_XXX¶
Defined in FT_GASP_H (freetype/ftgasp.h).
#define FT_GASP_NO_TABLE -1
#define FT_GASP_DO_GRIDFIT 0x01
#define FT_GASP_DO_GRAY 0x02
#define FT_GASP_SYMMETRIC_GRIDFIT 0x04
#define FT_GASP_SYMMETRIC_SMOOTHING 0x08
A list of values and/or bit-flags returned by the FT_Get_Gasp
function.
values
FT_GASP_NO_TABLE |
This special value means that there is no GASP table in this face. It is up to the client to decide what to do. |
FT_GASP_DO_GRIDFIT |
Grid-fitting and hinting should be performed at the specified ppem. This really means TrueType bytecode interpretation. If this bit is not set, no hinting gets applied. |
FT_GASP_DO_GRAY |
Anti-aliased rendering should be performed at the specified ppem. If not set, do monochrome rendering. |
FT_GASP_SYMMETRIC_SMOOTHING |
If set, smoothing along multiple axes must be used with ClearType. |
FT_GASP_SYMMETRIC_GRIDFIT |
Grid-fitting must be used with ClearType's symmetric smoothing. |
note
The bit-flags FT_GASP_DO_GRIDFIT
and FT_GASP_DO_GRAY
are to be used for standard font rasterization only. Independently of that, FT_GASP_SYMMETRIC_SMOOTHING
and FT_GASP_SYMMETRIC_GRIDFIT
are to be used if ClearType is enabled (and FT_GASP_DO_GRIDFIT
and FT_GASP_DO_GRAY
are consequently ignored).
‘ClearType’ is Microsoft's implementation of LCD rendering, partly protected by patents.
since
2.3.0
FT_Get_Gasp¶
Defined in FT_GASP_H (freetype/ftgasp.h).
For a TrueType or OpenType font file, return the rasterizer behaviour flags from the font's ‘gasp’ table corresponding to a given character pixel size.
input
face |
The source face handle. |
ppem |
The vertical character pixel size. |
return
Bit flags (see FT_GASP_XXX
), or FT_GASP_NO_TABLE
if there is no ‘gasp’ table in the face.
note
If you want to use the MM functionality of OpenType variation fonts (i.e., using FT_Set_Var_Design_Coordinates
and friends), call this function after setting an instance since the return values can change.
since
2.3.0