ref: d540613a7f31002d4bbd85d67214f8394e9c724a
parent: f876b245e9fcd467f6e71d4126ab118418110722
author: David Turner <[email protected]>
date: Fri Mar 23 13:19:04 EST 2001
small documentation update
--- a/CHANGES
+++ b/CHANGES
@@ -12,7 +12,7 @@
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 @@
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:
--- a/include/freetype/freetype.h
+++ b/include/freetype/freetype.h
@@ -824,33 +824,121 @@
/* */
+ /***********************************************************************
+ *
+ * @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 )