Details
-
Task
-
Resolution: Unresolved
-
Major
-
None
-
None
Description
Update FreeType to 2.10.0 version from 2.9
https://sourceforge.net/projects/freetype/files/freetype2/2.10.0/
This release brings one notable feature, namely support for color-layered outline glyphs (for example, scalable emoji glyphs). Additionally, the API reference has been completely overhauled and modernized, as already announced.
As usual, many minor fixes and corrections have been applied also;
CHANGES BETWEEN 2.9.1 and 2.10
I. IMPORTANT CHANGES
- A bunch of new functions has been added to access and process
COLR/CPAL data of OpenType fonts with color-layered glyphs.FT_Palette_Data_Get
Retrieve color palette data.
FT_Palette_Select
Select and activate a color palette for color-layered
glyphs.
FT_Palette_Set_Foreground_Color
Set text foreground color for palette index 0xFFFF.FT_Get_Color_Glyph_Layer
Get color layers for a given glyph (using an interator
object).FT_Bitmap_Blend
Blend one bitmap onto another with a given color.
- An experimental feature is the new behaviour of the
`FT_LOAD_COLOR' load flag for color-layered glyphs: Internally
it sets a flag so that if `FT_Render_Glyph' is called with
`FT_RENDER_MODE_NORMAL' (or `FT_Load_Glyph' with
`FT_LOAD_RENDER'), a default blending of the color glyph layers
will happen automatically for convenience.
- As a GSoC 2018 project, Nikhil Ramakrishnan completely
overhauled and modernized the API reference.II. MISCELLANEOUS
- The logic for computing the global ascender, descender, and
height of OpenType fonts has been slightly adjusted for
consistency.. If the `useTypoMetrics' flag (i.e., bit 7 in the `fsSelection'
field) in the `OS/2' table is set, use the `sTypo' fields in
`OS/2' unconditionally.
. Otherwise use the metrics data from the `hhea' table (if not
zero).
. Otherwise use the `sTypo' fields from the `OS/2' table (if not
zero).
. Otherwise use the `usWin' data from the `OS/2' table as a last
resort.Variable fonts will apply the `MVAR' deltas to whichever metrics
were picked.
- `TT_Set_MM_Blend' could fail if call repeatedly with the same
arguments.
- The precision of handling deltas in Variation Fonts has been
increased. The problem did only show up with multidimensional
designspaces.
- New function `FT_Library_SetLcdGeometry' to set up the geometry
of LCD subpixels.
- FreeType now uses the `defaultChar' property of PCF fonts to set
the glyph for the undefined character at glyph index 0 (as
FreeType already does for all other supported font formats). As
a consequence, the order of glyphs of a PCF font if accessed
with FreeType can be different now compared to previous
versions.This change doesn't affect PCF font access with cmaps.
- `FT_Select_Charmap' has been changed to allow parameter value
`FT_ENCODING_NONE', which is valid for BDF, PCF, and Windows FNT
formats to access built-in cmaps that don't have a predefined
`FT_Encoding' value.
- A previously reserved field in the `FT_GlyphSlotRec' structure
now holds the glyph index.
- On Win32 platforms, the use of `_DLL' to build the library has
been replaced with `DLL_EXPORT' and `DLL_IMPORT'.
- The usual round of fuzzer bug fixes to better reject malformed
fonts.
- `FT_Outline_New_Internal' and `FT_Outline_Done_Internal' have
been removed. These two functions were public by oversight only
and were never documented.
- A new function `FT_Error_String' returns descriptions of error
codes if configuration macro FT_CONFIG_OPTION_ERROR_STRINGS is
defined.
- `FT_Set_MM_WeightVector' and `FT_Get_MM_WeightVector' are new
functions limited to Adobe MultiMaster fonts to directly set and
get the weight vector.
- Support for Position Independent Code as needed by systems that
prohibit automatic address fixups, such as BREW, has been
removed. [Compilation with modern compilers that use flags like
`-fPIC' or `-fPIE' is not affected.]
- The `ftdump' demo program has new options `-c' and `-C' to
display charmaps in compact and detailed format, respectively.
Option `-V' has been removed.
- The `ftview', `ftstring', and `ftgrid' demo programs use a new
command line option `-d' to specify the program window's width,
height, and color depth.
- The `ftview' demo program now displays red boxes for zero-width
glyphs.
- `ftglyph' has limited support to display fonts with
color-layered glyphs. This will be improved later on.
- `ftgrid' can now display bitmap fonts also.
- The `ttdebug' demo program has a new option `-f' to select a
member of a TrueType collection (TTC).
- Other various improvements to the demo programs.
Attachments
Issue Links
- is duplicated by
-
CORE-17390 Update FreeType from v2.9.0 to 2.10.4 version
- Resolved