diff --git a/builds/meson/extract_freetype_version.py b/builds/meson/extract_freetype_version.py index 50e5a5485..15e87dbcc 100644 --- a/builds/meson/extract_freetype_version.py +++ b/builds/meson/extract_freetype_version.py @@ -1,7 +1,7 @@ #!/usr/bin/env python """Extract the FreeType version numbers from ``. -This script parses the header to extract the version number defined there. +This script parses the header to extract the version number defined there. By default, the full dotted version number is printed, but `--major`, `--minor` or `--patch` can be used to only print one of these values instead. diff --git a/docs/CHANGES b/docs/CHANGES index bca560b0f..a2f6d87fd 100644 --- a/docs/CHANGES +++ b/docs/CHANGES @@ -1,3 +1,52 @@ +CHANGES BETWEEN 2.10.2 and 2.10.3 + + I. IMPORTANT CHANGES + + - New flag `FT_OUTLINE_OVERLAP'. If set, make the smooth rasterizer + do 4x4 oversampling to mitigate artifacts in pixels partially + covered by overlapping contours. Note that this at least + quadruples the rendering time. + + If a glyph in a TrueType font has the `OVERLAP_SIMPLE' or + `OVERLAP_COMPOUND' bit set, FreeType automatically selects this + rendering mode. + + + II. MISCELLANEOUS + + - Using the arcane method of including FreeType header files with + macros like `FT_FREETYPE_H' is no longer mandatory (but retained + as an optional feature for backward compatibility). + + - Support for building the library with Meson. Building the demo + programs with Meson will follow in a forthcoming release. + + - Minor improvements to the B/W rasterizer. + + - Auto-hinter support for Medefaidrin script. + + - Fix various memory leaks (mainly for CFF) and other issues that + might cause crashes in rare circumstances. + + - Jam support has been removed. + + - In `ftview', custom LCD filter values are now normalized and + balanced. Unorthodox filters are still available through the `-L' + command line option. + + - The GUI demo programs can now be resized. + + - Demo programs that accept command line option `-k' can now handle + function keys, too. The corresponding character codes start with + 0xF1. As an example, the POSIX shell syntax (accepted by bash, + ksh, and zsh) + + -k $'\xF3q' + + emulates the pressing of function key `F3' followed by key `q'. + + +====================================================================== CHANGES BETWEEN 2.10.1 and 2.10.2 @@ -19,7 +68,7 @@ CHANGES BETWEEN 2.10.1 and 2.10.2 `docwriter' (Python >= 3.5 is required for targets `make refdoc' and `make refdoc-venv'). - - Auto-hinter support for Hanifi Rohingya and Medefaidrin. + - Auto-hinter support for Hanifi Rohingya. - Document the `FT2_KEEP_ALIVE' debugging environment variable. @@ -246,7 +295,7 @@ CHANGES BETWEEN 2.9 and 2.9.1 use the `pkg-config' interface. The `configure' script no longer installs `freetype-config' by - default. For backwards compatibility, a new configure option + default. For backward compatibility, a new configure option `--enable-freetype-config' is provided that reverts this decision. diff --git a/docs/INSTALL.ANY b/docs/INSTALL.ANY index 31d63b399..879dddb89 100644 --- a/docs/INSTALL.ANY +++ b/docs/INSTALL.ANY @@ -10,7 +10,7 @@ I. Standard procedure * If you use macro names for FreeType header files (while mandatory in earlier versions, this is now optional since FreeType version - 2.11) it is necessary to disable pre-compiled headers. This is + 2.10.3) it is necessary to disable pre-compiled headers. This is very important for Visual C++, because lines like #include FT_FREETYPE_H diff --git a/include/freetype/ftimage.h b/include/freetype/ftimage.h index 58b674f97..b125ce980 100644 --- a/include/freetype/ftimage.h +++ b/include/freetype/ftimage.h @@ -403,7 +403,7 @@ FT_BEGIN_HEADER * FT_OUTLINE_OVERLAP :: * This flag indicates that this outline contains overlapping contrours * and the anti-aliased renderer should perform oversampling to - * metigate possible artifacts. This flag should _not_ be set for + * mitigate possible artifacts. This flag should _not_ be set for * well designed glyphs without overlaps because it quadruples the * rendering time. * @@ -1017,11 +1017,11 @@ FT_BEGIN_HEADER * @note: * The @FT_RASTER_FLAG_AA bit flag must be set in the `flags` to * generate an anti-aliased glyph bitmap, otherwise a monochrome bitmap - * is generated. The `target` should have appropriate pixel mode and its + * is generated. The `target` should have appropriate pixel mode and its * dimensions define the clipping region. * * If both `( @FT_RASTER_FLAG_AA | @FT_RASTER_FLAG_DIRECT )` bit flags - * are set in `flags`, the raster will call an @FT_SpanFunc callback + * are set in `flags`, the raster calls an @FT_SpanFunc callback * `gray_spans` with `user` data as an argument ignoring `target`. This * allows direct composition over a pre-existing user surface to perform * the span drawing and composition. To optionally clip the spans, set diff --git a/include/freetype/ftlcdfil.h b/include/freetype/ftlcdfil.h index b8c5c0036..c6995f2ff 100644 --- a/include/freetype/ftlcdfil.h +++ b/include/freetype/ftlcdfil.h @@ -195,7 +195,7 @@ FT_BEGIN_HEADER * FreeType error code. 0~means success. * * @note: - * Since 2.11 the LCD filtering is enabled with @FT_LCD_FILTER_DEFAULT. + * Since 2.10.3 the LCD filtering is enabled with @FT_LCD_FILTER_DEFAULT. * It is no longer necessary to call this function explicitly except * to choose a different filter or disable filtering altogether with * @FT_LCD_FILTER_NONE. diff --git a/src/raster/ftraster.c b/src/raster/ftraster.c index 1408e5173..9f0a7976f 100644 --- a/src/raster/ftraster.c +++ b/src/raster/ftraster.c @@ -459,8 +459,9 @@ #define IS_TOP_OVERSHOOT( x ) \ (Bool)( x - FLOOR( x ) >= ras.precision_half ) - /* smart dropout rounding to find which pixel is closer to span ends; */ - /* to mimick Windows, symmetric cases break down indepenent of precision */ + /* Smart dropout rounding to find which pixel is closer to span ends. */ + /* To mimick Windows, symmetric cases break down indepenently of the */ + /* precision. */ #define SMART( p, q ) FLOOR( ( (p) + (q) + ras.precision * 63 / 64 ) >> 1 ) #if FT_RENDER_POOL_SIZE > 2048 @@ -2507,7 +2508,7 @@ x2 / (double)ras.precision )); /* We should not need this procedure but the vertical sweep */ - /* mishandles horizontal lines through pixel centers. So we */ + /* mishandles horizontal lines through pixel centers. So we */ /* have to check perfectly aligned span edges here. */ /* */ /* XXX: Can we handle horizontal lines better and drop this? */