ref: 083ba0b7bc475517a6dc9062c5096bdaf0aa9593
parent: e6bb95336ac164d37a89d7c4bd77025d6964f003
author: Werner Lemberg <[email protected]>
date: Fri Dec 23 10:10:54 EST 2005
Formatting, documentation improvements.
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,27 +1,28 @@
2005-12-23 David Turner <[email protected]>
- * Jamfile, docs/reference/README: fix it so that "jam refdoc" works
- correctly to generate the API reference in 'docs/reference'
+ * Jamfile (RefDoc), docs/reference/README: Fix it so that `jam
+ refdoc' works correctly to generate the API reference in
+ `docs/reference'.
- * src/tools/docmaker/tohtml.py: update to output nicer fields lists
- in the API reference
+ * src/tools/docmaker/tohtml.py (print_html_field,
+ print_html_field_list): Update to output nicer fields lists in the
+ API reference.
* src/base/ftobjs.c (FT_Load_Glyph): FT_LOAD_TARGET_LIGHT now
- forces auto-hinting
+ forces auto-hinting.
- * freetype/freetype.h: updating the documentation for
- FT_LOAD_TARGET_XXX and FT_Render_Mode values
+ * freetype/freetype.h: Updating the documentation for
+ FT_LOAD_TARGET_XXX and FT_Render_Mode values.
-
2005-12-23 suzuki toshiya <[email protected]>
- * src/base/ftmac.c (FT_New_Face_From_Suitcase): Counts scalable
- faces in supported formats (sfnt, LWFN) only, and ignore bitmap
- faces in unsupported formats (fbit, NFNT). The number of available
- faces are passed via face->num_faces. When bitmap faces are embedded
- in sfnt resource, face->num_fixed_size is correctly set. In public
- API, FT_New_Face() and FT_New_Face_From_FSSpec() count the faces
- as FT_GetFile_From_Mac_Name(), which ignores NFNT resources.
+ * src/base/ftmac.c (FT_New_Face_From_Suitcase): Count scalable faces
+ in supported formats (sfnt, LWFN) only, and ignore bitmap faces in
+ unsupported formats (fbit, NFNT). The number of available faces are
+ passed via face->num_faces. If bitmap faces are embedded in sfnt
+ resource, face->num_fixed_size is correctly set. In public API,
+ FT_New_Face() and FT_New_Face_From_FSSpec() count the faces as
+ FT_GetFile_From_Mac_Name(), which ignores NFNT resources.
* doc/CHANGES: Mention the changes.
--- a/docs/CHANGES
+++ b/docs/CHANGES
@@ -6,7 +6,7 @@
- The FT_HAS_KERNING macro always returned 0.
- - CFF OpenType fonts didn't return correct vertical metrics for
+ - CFF OpenType fonts didn't return correct vertical metrics for
glyphs with outlines.
- If FreeType was compiled without hinters, all font formats based
@@ -14,12 +14,12 @@
II. IMPORTANT CHANGES
- - the LIGHT hinting algorithm produces more pleasant results. Also,
- using the FT_LOAD_TARGET_LIGHT flags within FT_Load_Glyph will always
- force auto-hinting, as a special exception.
+ - The LIGHT hinting algorithm produces more pleasant results.
+ Also, using the FT_LOAD_TARGET_LIGHT flags within FT_Load_Glyph
+ always forces auto-hinting, as a special exception.
- - Face metrics (face->size->metrics) and glyph metrics are no
- longer rounded. If you do not round in your applications too,
+ - Face metrics (face->size->metrics) and glyph metrics are no
+ longer rounded. If you do not round in your applications too,
you may find glyphs become blurry.
- A new API `FT_TrueTypeGX_Validate' (in FT_GX_VALIDATE_H) has
@@ -29,7 +29,7 @@
accessing them. This code has been contributed by Masatake
Yamato and Toshiya Suzuki.
- - The following callback function types have changed slightly (by
+ - The following callback function types have changed slightly (by
adding the `const' keyword where appropriate):
FT_Outline_MoveToFunc
@@ -47,15 +47,15 @@
III. MISCELLANEOUS
- - the documentation for FT_LOAD_TARGET_XXX and FT_RENDER_MODE_XXX
- values have been updated to better reflect their uses and differences
- (one set is used to specify hinting algorithm, the other to specify
- pixel rendering mode).
+ - The documentation for FT_LOAD_TARGET_XXX and FT_RENDER_MODE_XXX
+ values now better reflects its usage and differences: One set is
+ used to specify the hinting algorithm, the other to specify pthe
+ ixel rendering mode.
- - FT_New_Face() & FT_New_Face_From_FSSpec() in ftmac.c are changed
- to count supported scalable faces (sfnt, LWFN) only, and returns
- the number of available faces via face->num_faces. Unsupported
- bitmap faces (fbit, NFNT) are ignored.
+ - FT_New_Face() and FT_New_Face_From_FSSpec() in ftmac.c are
+ changed to count supported scalable faces (sfnt, LWFN) only, and
+ returns the number of available faces via face->num_faces.
+ Unsupported bitmap faces (fbit, NFNT) are ignored.
- SFNT cmap handling has been improved, mainly to run faster.
@@ -70,8 +70,8 @@
for better readability.
- FreeType now honours bit 1 in the `head' table of TrueType fonts
- (meaning `left sidebearing point at x=0'). This helps with
- some buggy fonts.
+ (meaning `left sidebearing point at x=0'). This helps with some
+ buggy fonts.
- Rudimentary support for Adobe's new `SING Glyphlet' format. See
@@ -79,8 +79,8 @@
for more information.
- - The `ftdump' program from the `ft2demos' bundle now shows some
- information about charmaps. It also supports a new switch `-v'
+ - The `ftdump' program from the `ft2demos' bundle now shows some
+ information about charmaps. It also supports a new switch `-v'
to increase verbosity.
======================================================================
--- a/docs/reference/README
+++ b/docs/reference/README
@@ -1,5 +1,5 @@
After saying `make refdoc' this directory contains the FreeType API
reference. You need python to make this target.
-This also works with Jam, just type 'jam refdoc' in the main directory.
+This also works with Jam: Just type `jam refdoc' in the main directory.
--- a/include/freetype/freetype.h
+++ b/include/freetype/freetype.h
@@ -2248,141 +2248,144 @@
FT_Int32 load_flags );
- /***************************************************************************
- *
- * @enum:
- * FT_LOAD_XXX
- *
- * @description:
- * A list of bit-field constants, used with @FT_Load_Glyph to indicate
- * what kind of operations to perform during glyph loading.
- *
- * @values:
- * FT_LOAD_DEFAULT ::
- * Corresponding to 0, this value is used a default glyph load. In this
- * case, the following happens:
- *
- * 1. FreeType looks for a bitmap for the glyph corresponding to the
- * face's current size. If one is found, the function returns. The
- * bitmap data can be accessed from the glyph slot (see note below).
- *
- * 2. If no embedded bitmap is searched or found, FreeType looks for a
- * scalable outline. If one is found, it is loaded from the font
- * file, scaled to device pixels, then `hinted' to the pixel grid in
- * order to optimize it. The outline data can be accessed from the
- * glyph slot (see note below).
- *
- * Note that by default, the glyph loader doesn't render outlines into
- * bitmaps. The following flags are used to modify this default
- * behaviour to more specific and useful cases.
- *
- * FT_LOAD_NO_SCALE ::
- * Don't scale the vector outline being loaded to 26.6 fractional
- * pixels, but kept in font units. Note that this also disables
- * hinting and the loading of embedded bitmaps. You should only use it
- * when you want to retrieve the original glyph outlines in font units.
- *
- * FT_LOAD_NO_HINTING ::
- * Don't hint glyph outlines after their scaling to device pixels.
- * This generally generates `blurrier' glyphs in anti-aliased modes.
- *
- * This flag is ignored if @FT_LOAD_NO_SCALE is set. See also
- * FT_FACE_FLAG_HINTER (@FT_FACE_FLAG_XXX), FT_LOAD_FORCE_AUTO and
- * FT_LOAD_NO_AUTOHINT below.
- *
- * FT_LOAD_RENDER ::
- * Render the glyph outline immediately into a bitmap before the glyph
- * loader returns. By default, the glyph is rendered for the
- * @FT_RENDER_MODE_NORMAL mode, which corresponds to 8-bit anti-aliased
- * bitmaps using 256 opacity levels. You can use either
- * @FT_LOAD_TARGET_MONO or @FT_LOAD_MONOCHROME to render 1-bit
- * monochrome bitmaps.
- *
- * This flag is ignored if @FT_LOAD_NO_SCALE is set.
- *
- * FT_LOAD_NO_BITMAP ::
- * Don't look for bitmaps when loading the glyph. Only scalable
- * outlines are loaded when available, and scaled, hinted, or
- * rendered depending on other bit flags.
- *
- * This does not prevent you from rendering outlines to bitmaps
- * with @FT_LOAD_RENDER, however.
- *
- * FT_LOAD_VERTICAL_LAYOUT ::
- * Prepare the glyph image for vertical text layout. This basically
- * means that `face.glyph.advance' corresponds to the vertical
- * advance height (instead of the default horizontal advance width),
- * and that the glyph image is translated to match the vertical
- * bearings positions.
- *
- * FT_LOAD_FORCE_AUTOHINT ::
- * Force the use of the FreeType auto-hinter when a glyph outline is
- * loaded. You shouldn't need this in a typical application, since it
- * is mostly used to experiment with its algorithm.
- *
- * See also FT_FACE_FLAG_HINTER (@FT_FACE_FLAG_XXX), FT_LOAD_NO_HINTING
- * above, and FT_LOAD_NO_AUTOHINT below.
- *
- * FT_LOAD_CROP_BITMAP ::
- * Indicates that the glyph loader should try to crop the bitmap (i.e.,
- * remove all space around its black bits) when loading it. This is
- * only useful when loading embedded bitmaps in certain fonts, since
- * bitmaps rendered with @FT_LOAD_RENDER are always cropped by default.
- *
- * FT_LOAD_PEDANTIC ::
- * Indicates that the glyph loader should perform pedantic
- * verifications during glyph loading, rejecting invalid fonts. This
- * is mostly used to detect broken glyphs in fonts. By default,
- * FreeType tries to handle broken fonts also.
- *
- * FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH ::
- * Indicates that the glyph loader should ignore the global advance
- * width defined in the font. For historical reasons (to support
- * buggy CJK fonts), FreeType uses the value of the `advanceWidthMax'
- * field in the `htmx' table for all glyphs if the font is monospaced.
- * Activating this flags makes FreeType use the metric values given in
- * the `htmx' table.
- *
- * FT_LOAD_NO_RECURSE ::
- * This flag is only used internally. It merely indicates that the
- * glyph loader should not load composite glyphs recursively. Instead,
- * it should set the `num_subglyph' and `subglyphs' values of the glyph
- * slot accordingly, and set "glyph->format" to
- * @FT_GLYPH_FORMAT_COMPOSITE.
- *
- * The description of sub-glyphs is not available to client
- * applications for now.
- *
- * FT_LOAD_IGNORE_TRANSFORM ::
- * Indicates that the glyph loader should not try to transform the
- * loaded glyph image. This doesn't prevent scaling, hinting, or
- * rendering. See @FT_Set_Transform
- *
- * FT_LOAD_MONOCHROME ::
- * This flag is used with @FT_LOAD_RENDER to indicate that you want
- * to render a 1-bit monochrome glyph bitmap from a vectorial outline.
- *
- * Note that this has no effect on the hinting algorithm used by the
- * glyph loader. You should better use @FT_LOAD_TARGET_MONO if you
- * want to render monochrome-optimized glyph images instead.
- *
- * FT_LOAD_LINEAR_DESIGN ::
- * Return the linearly scaled metrics expressed in original font units
- * instead of the default 16.16 pixel values.
- *
- * FT_LOAD_NO_AUTOHINT ::
- * Indicates that the auto-hinter should never be used to hint glyph
- * outlines. This doesn't prevent native format-specific hinters from
- * being used. This can be important for certain fonts where unhinted
- * output is better than auto-hinted one.
- *
- * See also FT_FACE_FLAG_HINTER (@FT_FACE_FLAG_XXX), FT_LOAD_FORCE_AUTO,
- * and FT_LOAD_NO_HINTING above.
- *
- * @note:
- * see also @FT_LOAD_TARGET_XXX which relate to hinting algorithm
- * selection.
- */
+ /*************************************************************************
+ *
+ * @enum:
+ * FT_LOAD_XXX
+ *
+ * @description:
+ * A list of bit-field constants used with @FT_Load_Glyph to indicate
+ * what kind of operations to perform during glyph loading.
+ *
+ * @values:
+ * FT_LOAD_DEFAULT ::
+ * Corresponding to 0, this value is used as the default glyph load
+ * operation. In this case, the following happens:
+ *
+ * 1. FreeType looks for a bitmap for the glyph corresponding to the
+ * face's current size. If one is found, the function returns.
+ * The bitmap data can be accessed from the glyph slot (see note
+ * below).
+ *
+ * 2. If no embedded bitmap is searched or found, FreeType looks for a
+ * scalable outline. If one is found, it is loaded from the font
+ * file, scaled to device pixels, then `hinted' to the pixel grid
+ * in order to optimize it. The outline data can be accessed from
+ * the glyph slot (see note below).
+ *
+ * Note that by default, the glyph loader doesn't render outlines into
+ * bitmaps. The following flags are used to modify this default
+ * behaviour to more specific and useful cases.
+ *
+ * FT_LOAD_NO_SCALE ::
+ * Don't scale the vector outline being loaded to 26.6 fractional
+ * pixels, but kept in font units. Note that this also disables
+ * hinting and the loading of embedded bitmaps. You should only use
+ * it when you want to retrieve the original glyph outlines in font
+ * units.
+ *
+ * FT_LOAD_NO_HINTING ::
+ * Don't hint glyph outlines after their scaling to device pixels.
+ * This generally generates `blurrier' glyphs in anti-aliased modes.
+ *
+ * This flag is ignored if @FT_LOAD_NO_SCALE is set. See also
+ * FT_FACE_FLAG_HINTER (@FT_FACE_FLAG_XXX), FT_LOAD_FORCE_AUTO and
+ * FT_LOAD_NO_AUTOHINT below.
+ *
+ * FT_LOAD_RENDER ::
+ * Render the glyph outline immediately into a bitmap before the glyph
+ * loader returns. By default, the glyph is rendered for the
+ * @FT_RENDER_MODE_NORMAL mode, which corresponds to 8-bit anti-aliased
+ * bitmaps using 256 opacity levels. You can use either
+ * @FT_LOAD_TARGET_MONO or @FT_LOAD_MONOCHROME to render 1-bit
+ * monochrome bitmaps.
+ *
+ * This flag is ignored if @FT_LOAD_NO_SCALE is set.
+ *
+ * FT_LOAD_NO_BITMAP ::
+ * Don't look for bitmaps when loading the glyph. Only scalable
+ * outlines are loaded when available, and scaled, hinted, or rendered
+ * depending on other bit flags.
+ *
+ * This does not prevent you from rendering outlines to bitmaps with
+ * @FT_LOAD_RENDER, however.
+ *
+ * FT_LOAD_VERTICAL_LAYOUT ::
+ * Prepare the glyph image for vertical text layout. This basically
+ * means that `face.glyph.advance' corresponds to the vertical advance
+ * height (instead of the default horizontal advance width), and that
+ * the glyph image is translated to match the vertical bearings
+ * positions.
+ *
+ * FT_LOAD_FORCE_AUTOHINT ::
+ * Force the use of the FreeType auto-hinter when a glyph outline is
+ * loaded. You shouldn't need this in a typical application, since it
+ * is mostly used to experiment with its algorithm.
+ *
+ * See also FT_FACE_FLAG_HINTER (@FT_FACE_FLAG_XXX),
+ * FT_LOAD_NO_HINTING above, and FT_LOAD_NO_AUTOHINT below.
+ *
+ * FT_LOAD_CROP_BITMAP ::
+ * Indicates that the glyph loader should try to crop the bitmap
+ * (i.e., remove all space around its black bits) when loading it.
+ * This is only useful when loading embedded bitmaps in certain fonts,
+ * since bitmaps rendered with @FT_LOAD_RENDER are always cropped by
+ * default.
+ *
+ * FT_LOAD_PEDANTIC ::
+ * Indicates that the glyph loader should perform pedantic
+ * verifications during glyph loading, rejecting invalid fonts. This
+ * is mostly used to detect broken glyphs in fonts. By default,
+ * FreeType tries to handle broken fonts also.
+ *
+ * FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH ::
+ * Indicates that the glyph loader should ignore the global advance
+ * width defined in the font. For historical reasons (to support
+ * buggy CJK fonts), FreeType uses the value of the `advanceWidthMax'
+ * field in the `htmx' table for all glyphs if the font is monospaced.
+ * Activating this flags makes FreeType use the metric values given in
+ * the `htmx' table.
+ *
+ * FT_LOAD_NO_RECURSE ::
+ * This flag is only used internally. It merely indicates that the
+ * glyph loader should not load composite glyphs recursively.
+ * Instead, it should set the `num_subglyph' and `subglyphs' values of
+ * the glyph slot accordingly, and set "glyph->format" to
+ * @FT_GLYPH_FORMAT_COMPOSITE.
+ *
+ * The description of sub-glyphs is not available to client
+ * applications for now.
+ *
+ * FT_LOAD_IGNORE_TRANSFORM ::
+ * Indicates that the glyph loader should not try to transform the
+ * loaded glyph image. This doesn't prevent scaling, hinting, or
+ * rendering. See @FT_Set_Transform.
+ *
+ * FT_LOAD_MONOCHROME ::
+ * This flag is used with @FT_LOAD_RENDER to indicate that you want to
+ * render a 1-bit monochrome glyph bitmap from a vectorial outline.
+ *
+ * Note that this has no effect on the hinting algorithm used by the
+ * glyph loader. You should better use @FT_LOAD_TARGET_MONO if you
+ * want to render monochrome-optimized glyph images instead.
+ *
+ * FT_LOAD_LINEAR_DESIGN ::
+ * Return the linearly scaled metrics expressed in original font units
+ * instead of the default 16.16 pixel values.
+ *
+ * FT_LOAD_NO_AUTOHINT ::
+ * Indicates that the auto-hinter should never be used to hint glyph
+ * outlines. This doesn't prevent native format-specific hinters from
+ * being used. This can be important for certain fonts where unhinted
+ * output is better than auto-hinted one.
+ *
+ * See also FT_FACE_FLAG_HINTER (@FT_FACE_FLAG_XXX), FT_LOAD_FORCE_AUTO,
+ * and FT_LOAD_NO_HINTING above.
+ *
+ * @note:
+ * See also @FT_LOAD_TARGET_XXX which relates to the hinting algorithm
+ * selection.
+ */
#define FT_LOAD_DEFAULT 0x0
#define FT_LOAD_NO_SCALE 0x1
#define FT_LOAD_NO_HINTING 0x2
@@ -2404,71 +2407,74 @@
/* */
- /**************************************************************************
- *
- * @enum: FT_LOAD_TARGET_XXX
- *
- * @description:
- * a list of values that are used to select a specific hinting
- * algorithm to the glyph loader. You should OR one of these values
- * to your 'load_flags' when calling @FT_Load_Glyph.
- *
- * note that these values are only used by the auto-hinter, and ignored
- * by the native ones (e.g. the TrueType bytecode interpreter). You
- * must use @FT_LOAD_FORCE_AUTOHINT to ensure that they're always used.
- *
- * @FT_LOAD_TARGET_LIGHT being an exception, that always forces the
- * auto-hinter.
- *
- * @values:
- * FT_LOAD_TARGET_NORMAL ::
- * correspond to the default hinting algorithm, optimized for standard
- * gray-level rendering. for monochrome output, use @FT_RENDER_MODE_MONO
- * instead.
- *
- * FT_LOAD_TARGET_LIGHT ::
- * correspond to a lighter hinting algorithm for non-monochrome modes.
- * This will generate more glyphs that are more fuzzy but more faithful
- * to their original shape. A bit like Mac OS X.
- *
- * As a special exception, this values *always* forces auto-hinting,
- * whatever the native hinter is.
- *
- * FT_LOAD_TARGET_MONO ::
- * strong hinting algorithm that should only be used for monochrome
- * output. The result will probably be unpleasant for other rendering
- * modes.
- *
- * FT_LOAD_TARGET_LCD ::
- * a variant of @FT_LOAD_TARGET_NORMAL optimized for horizontally
- * decimated LCD displays.
- *
- * FT_LOAD_TARGET_LCD_V ::
- * a variant of @FT_LOAD_TARGET_NORMAL optimized for vertically decimated
- * LCD displays.
- *
- * @note:
- * You should use only _one_ of the FT_LOAD_TARGET_XXX values in your
- * 'load_flags'. They can't be ORed.
- *
- * If you also use the @FT_LOAD_RENDER flag, then the output will be
- * determined by the corresponding @FT_Render_Mode value. E.g.
- * @FT_LOAD_TARGET_NORMAL will generate a gray-level pixmap
- * (see @FT_RENDER_MODE_NORMAL)
- *
- * You can use a hinting algorithm that doesn't correspond to the same
- * rendering mode. For example, it is possible to use the `light' hinting
- * algorithm and have the results rendered in horizontal LCD pixel mode,
- * with code like this:
- *
- * {
- * FT_Load_Glyph( face, glyph_index,
- * load_flags | FT_LOAD_TARGET_LIGHT );
- *
- * FT_Render_Glyph( face->glyph, FT_RENDER_MODE_LCD );
- * }
- */
+ /**************************************************************************
+ *
+ * @enum:
+ * FT_LOAD_TARGET_XXX
+ *
+ * @description:
+ * A list of values that are used to select a specific hinting algorithm
+ * to the glyph loader. You should OR one of these values to your
+ * `load_flags' when calling @FT_Load_Glyph.
+ *
+ * Note that these values are only used by the auto-hinter, and ignored
+ * by other hinting engines (e.g., the TrueType bytecode interpreter).
+ * You must use @FT_LOAD_FORCE_AUTOHINT to ensure that they are always
+ * used.
+ *
+ * @FT_LOAD_TARGET_LIGHT is an exception, since it always forces the
+ * auto-hinter.
+ *
+ * @values:
+ * FT_LOAD_TARGET_NORMAL ::
+ * This corresponds to the default hinting algorithm, optimized for
+ * standard gray-level rendering. For monochrome output, use
+ * @FT_RENDER_MODE_MONO instead.
+ *
+ * FT_LOAD_TARGET_LIGHT ::
+ * A lighter hinting algorithm for non-monochrome modes. Many
+ * generated glyphs are more fuzzy but better resemble its original
+ * shape. A bit like rendering on Mac OS X.
+ *
+ * As a special exception, this values *always* forces auto-hinting,
+ * whatever the native hinter is.
+ *
+ * FT_LOAD_TARGET_MONO ::
+ * Strong hinting algorithm that should only be used for monochrome
+ * output. The result will probably be unpleasant for other rendering
+ * modes.
+ *
+ * FT_LOAD_TARGET_LCD ::
+ * A variant of @FT_LOAD_TARGET_NORMAL optimized for horizontally
+ * decimated LCD displays.
+ *
+ * FT_LOAD_TARGET_LCD_V ::
+ * A variant of @FT_LOAD_TARGET_NORMAL optimized for vertically
+ * decimated LCD displays.
+ *
+ * @note:
+ * You should use only _one_ of the FT_LOAD_TARGET_XXX values in your
+ * `load_flags'. They can't be ORed.
+ *
+ * If you also use the @FT_LOAD_RENDER flag, then the output will be
+ * determined by the corresponding @FT_Render_Mode value. For example,
+ * @FT_LOAD_TARGET_NORMAL generates a gray-level pixmap
+ * (see @FT_RENDER_MODE_NORMAL).
+ *
+ * You can use a hinting algorithm that doesn't correspond to the same
+ * rendering mode. As an example, it is possible to use the `light'
+ * hinting algorithm and have the results rendered in horizontal LCD
+ * pixel mode, with code like
+ *
+ * {
+ * FT_Load_Glyph( face, glyph_index,
+ * load_flags | FT_LOAD_TARGET_LIGHT );
+ *
+ * FT_Render_Glyph( face->glyph, FT_RENDER_MODE_LCD );
+ * }
+ */
+
#define FT_LOAD_TARGET_( x ) ( (FT_Int32)( (x) & 15 ) << 16 )
#define FT_LOAD_TARGET_NORMAL FT_LOAD_TARGET_( FT_RENDER_MODE_NORMAL )
@@ -2477,13 +2483,16 @@
#define FT_LOAD_TARGET_LCD FT_LOAD_TARGET_( FT_RENDER_MODE_LCD )
#define FT_LOAD_TARGET_LCD_V FT_LOAD_TARGET_( FT_RENDER_MODE_LCD_V )
-/**
- * @macro: FT_LOAD_TARGET_MODE
- *
- * @description:
- * return the @FT_Render_Mode corresponding to a given @FT_LOAD_TARGET_XXX
- * value.
- */
+
+ /*
+ * @macro:
+ * FT_LOAD_TARGET_MODE
+ *
+ * @description:
+ * Return the @FT_Render_Mode corresponding to a given
+ * @FT_LOAD_TARGET_XXX value.
+ */
+
#define FT_LOAD_TARGET_MODE( x ) ( (FT_Render_Mode)( ( (x) >> 16 ) & 15 ) )
/* */
@@ -2540,9 +2549,9 @@
/* anti-aliased bitmaps, using 256 levels of opacity. */
/* */
/* FT_RENDER_MODE_LIGHT :: */
- /* This is equivalent to @FT_RENDER_MODE_NORMAL. It is only defined */
- /* as a separate value because render modes are also used */
- /* indirectly to define hinting algorithm selectors. See */
+ /* This is equivalent to @FT_RENDER_MODE_NORMAL. It is only */
+ /* defined as a separate value because render modes are also used */
+ /* indirectly to define hinting algorithm selectors. See */
/* @FT_LOAD_TARGET_XXX for details. */
/* */
/* FT_RENDER_MODE_MONO :: */
--- a/src/base/ftmac.c
+++ b/src/base/ftmac.c
@@ -24,7 +24,7 @@
functions, and pretend the suitcase file is a collection.
Warning: fbit and NFNT bitmap resources are not supported yet.
- In old sfnt fonts, bitmap glyph data for each sizes are stored in
+ In old sfnt fonts, bitmap glyph data for each size is stored in
each NFNT resources, instead of bdat table in sfnt resource.
Therefore, face->num_fixed_sizes is set to 0, because bitmap
data in NFNT resource is unavailable at present.
@@ -266,17 +266,17 @@
/* count_faces_sfnt() counts both of sfnt & NFNT refered by FOND */
/* count_faces_scalable() counts sfnt only refered by FOND */
static short
- count_faces_sfnt( char *fond_data )
+ count_faces_sfnt( char* fond_data )
{
/* The count is 1 greater than the value in the FOND. */
/* Isn't that cute? :-) */
- return 1 + *( (short *)( fond_data + sizeof ( FamRec ) ) );
+ return 1 + *( (short*)( fond_data + sizeof ( FamRec ) ) );
}
static short
- count_faces_scalable( char *fond_data )
+ count_faces_scalable( char* fond_data )
{
AsscEntry* assoc;
FamRec* fond;
@@ -291,7 +291,7 @@
for ( i = 0; i < face_all; i++ )
{
if ( 0 == assoc[i].fontSize )
- face ++;
+ face++;
}
return face;
}
--- a/src/base/ftobjs.c
+++ b/src/base/ftobjs.c
@@ -525,7 +525,8 @@
FT_DRIVER_USES_OUTLINES( driver ) );
/* force auto-hinting for the LIGHT hinting mode */
- if ( autohint && FT_LOAD_TARGET_MODE(load_flags) == FT_RENDER_MODE_LIGHT )
+ if ( autohint &&
+ FT_LOAD_TARGET_MODE( load_flags ) == FT_RENDER_MODE_LIGHT )
load_flags |= FT_LOAD_FORCE_AUTOHINT;
if ( autohint )