From d540613a7f31002d4bbd85d67214f8394e9c724a Mon Sep 17 00:00:00 2001 From: David Turner Date: Fri, 23 Mar 2001 18:19:04 +0000 Subject: [PATCH] small documentation update --- CHANGES | 8 ++-- include/freetype/freetype.h | 88 +++++++++++++++++++++++++++++++++++++ 2 files changed, 93 insertions(+), 3 deletions(-) diff --git a/CHANGES b/CHANGES index aaed570b6..674907d95 100644 --- a/CHANGES +++ b/CHANGES @@ -12,7 +12,7 @@ LATEST CHANGES BETWEEN 2.0.2 and 2.0.1 the definition of the TT_CONFIG_OPTION_BYTECODE_INTERPRETER macro in the file "include/freetype/config/ftoption.h" - - The CFF driver has been improved by Tom Kacvinsky: + - The CFF driver has been improved by Tom Kacvinsky and Sander van der Wal: * support for "seac" emulation * support for "dotsection" @@ -22,13 +22,15 @@ LATEST CHANGES BETWEEN 2.0.2 and 2.0.1 Type 1 fonts converted to the CFF formats by Adobe Acrobat. - - the Type 1 driver was also improved by Tom: + - the Type 1 driver was also improved by Tom & others: * better EM size computation + * better support for synthetic (transformed) fonts + * the Type 1 driver returns the charstrings corresponding to each glyph in the "glyph->control_data" field after a call to - "FT_Load_Glyph" + "FT_Load_Glyph" (thanks Ha Shao) - various other bugfixes, including the following: diff --git a/include/freetype/freetype.h b/include/freetype/freetype.h index 9bd80bfbf..9ae157de3 100644 --- a/include/freetype/freetype.h +++ b/include/freetype/freetype.h @@ -824,33 +824,121 @@ FT_BEGIN_HEADER /* */ + /*********************************************************************** + * + * @macro: FT_HAS_HORIZONTAL (face) + * + * @description: + * a macro that returns true whenever a face object contains horizontal + * metrics. (this is true for all font formats though). + * + * @also: + * @FT_HAS_VERTICAL can be used to check for vertical metrics. + */ #define FT_HAS_HORIZONTAL( face ) \ ( face->face_flags & FT_FACE_FLAG_HORIZONTAL ) + /*********************************************************************** + * + * @macro: FT_HAS_VERTICAL (face) + * + * @description: + * a macro that returns true whenever a face object contains vertical + * metrics. + */ #define FT_HAS_VERTICAL( face ) \ ( face->face_flags & FT_FACE_FLAG_VERTICAL ) + /*********************************************************************** + * + * @macro: FT_HAS_KERNING (face) + * + * @description: + * a macro that returns true whenever a face object contains kerning + * data that can be accessed with @FT_Get_Kerning + */ #define FT_HAS_KERNING( face ) \ ( face->face_flags & FT_FACE_FLAG_KERNING ) + /*********************************************************************** + * + * @macro: FT_IS_SCALABLE (face) + * + * @description: + * a macro that returns true whenever a face object contains a scalable + * font face. I.e., true for TrueType, Type 1, CID and OpenType/CFF + * font formats. + */ #define FT_IS_SCALABLE( face ) \ ( face->face_flags & FT_FACE_FLAG_SCALABLE ) + + /*********************************************************************** + * + * @macro: FT_IS_SFNT (face) + * + * @description: + * a macro that returns true whenever a face object contains a font whose + * format is based on the SFNT storage scheme. This usually means: + * TrueType fonts, OpenType fonts, as well as SFNT-based embedded bitmap + * fonts. + * + * When this macro is true, all functions defined in @FT_SFNT_NAMES_H + * and @FT_TRUETYPE_TABLES_H are available + */ #define FT_IS_SFNT( face ) \ ( face->face_flags & FT_FACE_FLAG_SFNT ) + /*********************************************************************** + * + * @macro: FT_IS_FIXED_WIDTH (face) + * + * @description: + * a macro that returns true whenever a face object contains a font + * face that contains fixed-width (or "monospace", "fixed-pitch", etc..) + * glyphs. + */ #define FT_IS_FIXED_WIDTH( face ) \ ( face->face_flags & FT_FACE_FLAG_FIXED_WIDTH ) + + /*********************************************************************** + * + * @macro: FT_IS_FIXED_SIZES (face) + * + * @description: + * a macro that returns true whenever a face object contains some + * embedded bitmaps. See the 'fixed_sizes' field of the @FT_FaceRec + * structure. + */ #define FT_HAS_FIXED_SIZES( face ) \ ( face->face_flags & FT_FACE_FLAG_FIXED_SIZES ) + /* */ + #define FT_HAS_FAST_GLYPHS( face ) \ ( face->face_flags & FT_FACE_FLAG_FAST_GLYPHS ) + /*********************************************************************** + * + * @macro: FT_HAS_GLYPH_NAMES (face) + * + * @description: + * a macro that returns true whenever a face object contains some + * glyph names that can be accessed through @FT_Get_Glyph_Names + */ #define FT_HAS_GLYPH_NAMES( face ) \ ( face->face_flags & FT_FACE_FLAG_GLYPH_NAMES ) + /*********************************************************************** + * + * @macro: FT_HAS_MULTIPLE_MASTERS (face) + * + * @description: + * a macro that returns true whenever a face object contains some + * multiple masters. The functions provided by @FT_MULTIPLE_MASTERS_H + * are then available to choose the exact design you want. + */ #define FT_HAS_MULTIPLE_MASTERS( face ) \ ( face->face_flags & FT_FACE_FLAG_MULTIPLE_MASTERS )