[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ft-announce] Announcing FreeType 2.10.0

From: Werner LEMBERG
Subject: [ft-announce] Announcing FreeType 2.10.0
Date: Fri, 15 Mar 2019 10:13:03 +0100 (CET)

FreeType 2.10.0 has been released.

It is available from


The latter site also holds older versions of the FreeType library.

See below for the relevant snippet from the CHANGES file.



PS: Downloads from  will redirect to your nearest
    mirror site.   Files on  mirrors may  be subject to  a replication
    delay   of   up   to   24   hours.   In   case   of  problems  use


FreeType 2  is a software  font engine that  is designed to  be small,
efficient,  highly   customizable,  and  portable   while  capable  of
producing high-quality output (glyph images) of most vector and bitmap
font formats.

Note that  FreeType 2 is  a font service  and doesn't provide  APIs to
perform higher-level features, like text layout or graphics processing
(e.g.,  colored  text  rendering,  `hollowing',  etc.).   However,  it
greatly simplifies these tasks by providing a simple, easy to use, and
uniform interface to access the content of font files.

FreeType  2  is  released  under  two open-source  licenses:  our  own
BSD-like FreeType  License and the  GPL.  It can  thus be used  by any
kind of projects, be they proprietary or not.


CHANGES BETWEEN 2.9.1 and 2.10


    - A bunch  of new functions has  been added to access  and process
      COLR/CPAL data of OpenType fonts with color-layered glyphs.

          Retrieve color palette data.
          Select and activate a color palette for color-layered
          Set text foreground color for palette index 0xFFFF.

          Get color layers for a given glyph (using an interator

          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.


    - The  logic for  computing  the global  ascender, descender,  and
      height  of  OpenType  fonts   has  been  slightly  adjusted  for

      . 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
      . Otherwise use the `sTypo' fields from the `OS/2' table (if not
      . Otherwise use the `usWin' data from the `OS/2' table as a last

      Variable fonts will apply the `MVAR' deltas to whichever metrics
      were picked.

    - `TT_Set_MM_Blend' could  fail if  call repeatedly with  the same

    - The precision  of handling  deltas in  Variation Fonts  has been
      increased.  The  problem did only show  up with multidimensional

    - 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

      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

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

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

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

reply via email to

[Prev in Thread] Current Thread [Next in Thread]