Document changes to last release.

This commit is contained in:
Werner Lemberg 2020-10-10 12:48:18 +02:00
parent 40479fad93
commit c9f588be56
6 changed files with 61 additions and 11 deletions

View File

@ -1,7 +1,7 @@
#!/usr/bin/env python
"""Extract the FreeType version numbers from `<freetype/freetype.h>`.
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.

View File

@ -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.

View File

@ -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

View File

@ -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

View File

@ -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.

View File

@ -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? */