parent
4f7496eea2
commit
cc7f12a429
9 changed files with 363 additions and 314 deletions
File diff suppressed because it is too large
Load Diff
@ -1,65 +1,90 @@ |
||||
/***************************************************************************/ |
||||
/* */ |
||||
/* ftgasp.h */ |
||||
/* */ |
||||
/* Access of TrueType's `gasp' table (specification). */ |
||||
/* */ |
||||
/* Copyright 2007 by */ |
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ |
||||
/* */ |
||||
/* This file is part of the FreeType project, and may only be used, */ |
||||
/* modified, and distributed under the terms of the FreeType project */ |
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */ |
||||
/* this file you indicate that you have read the license and */ |
||||
/* understand and accept it fully. */ |
||||
/* */ |
||||
/***************************************************************************/ |
||||
|
||||
|
||||
#ifndef _FT_GASP_H_ |
||||
#define _FT_GASP_H_ |
||||
|
||||
#include <ft2build.h> |
||||
#include FT_FREETYPE_H |
||||
|
||||
/**
|
||||
* @enum: FT_GASP_XXX |
||||
* |
||||
* @description: |
||||
* 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's up to the client to decide what to |
||||
* do |
||||
* |
||||
* FT_GASP_DO_GRIDFIT :: |
||||
* indicates that grid-fitting/hinting should be |
||||
* performed at the specified ppem. This *really* |
||||
* means TrueType bytecode interpretation |
||||
* |
||||
* FT_GASP_DO_GRAY :: |
||||
* indicates that anti-aliased rendering should be |
||||
* performed at the specified ppem |
||||
* |
||||
* FT_GASP_SYMMETRIC_SMOOTHING :: |
||||
* indicates that smoothing along multiple axis |
||||
* must be used with ClearType. |
||||
* |
||||
* FT_GASP_SYMMETRIC_GRIDFIT :: |
||||
* indicates that grid-fitting must be used with |
||||
* ClearType's symmetric smoothing |
||||
*/ |
||||
#define FT_GASP_NO_TABLE -1 |
||||
#define FT_GASP_DO_GRIDFIT 0x01 |
||||
#define FT_GASP_DO_GRAY 0x02 |
||||
#define FT_GASP_SYMMETRIC_SMOOTHING 0x08 |
||||
#define FT_GASP_SYMMETRIC_GRIDFIT 0x10 |
||||
|
||||
/**
|
||||
* @func: FT_Get_Gasp |
||||
* |
||||
* @description: |
||||
* read the GASP table from a TrueType or OpenType font file |
||||
* and return the entry corresponding to a given character |
||||
* pixel size |
||||
* |
||||
* @input: |
||||
* face :: source face handle |
||||
* ppem :: vertical character pixel size |
||||
* |
||||
* @return: |
||||
* bit flags, or @FT_GASP_NO_TABLE is there is no GASP table |
||||
* in the face. |
||||
*/ |
||||
/*************************************************************************
|
||||
* |
||||
* @enum: |
||||
* FT_GASP_XXX |
||||
* |
||||
* @description: |
||||
* 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. |
||||
* |
||||
* FT_GASP_DO_GRAY :: |
||||
* Anti-aliased rendering should be performed at the specified ppem. |
||||
* |
||||
* FT_GASP_SYMMETRIC_SMOOTHING :: |
||||
* Smoothing along multiple axes must be used with ClearType. |
||||
* |
||||
* FT_GASP_SYMMETRIC_GRIDFIT :: |
||||
* Grid-fitting must be used with ClearType's symmetric smoothing. |
||||
* |
||||
* @note: |
||||
* `ClearType' is Microsoft's implementation of LCD rendering, partly |
||||
* protected by patents. |
||||
*/ |
||||
#define FT_GASP_NO_TABLE -1 |
||||
#define FT_GASP_DO_GRIDFIT 0x01 |
||||
#define FT_GASP_DO_GRAY 0x02 |
||||
#define FT_GASP_SYMMETRIC_SMOOTHING 0x08 |
||||
#define FT_GASP_SYMMETRIC_GRIDFIT 0x10 |
||||
|
||||
|
||||
/*************************************************************************
|
||||
* |
||||
* @func: |
||||
* FT_Get_Gasp |
||||
* |
||||
* @description: |
||||
* Read the `gasp' table from a TrueType or OpenType font file and |
||||
* return the entry 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 is there is no |
||||
* `gasp' table in the face. |
||||
*/ |
||||
FT_EXPORT( FT_Int ) |
||||
FT_Get_Gasp( FT_Face face, |
||||
FT_UInt ppem ); |
||||
FT_Get_Gasp( FT_Face face, |
||||
FT_UInt ppem ); |
||||
|
||||
/* */ |
||||
|
||||
#endif /* _FT_GASP_H_ */ |
||||
|
||||
|
||||
/* END */ |
||||
|
Loading…
Reference in new issue