• 3.3.2 b212e767e0

    3.3.2 Stable

    dnkl released this 2025-07-16 11:48:24 +02:00 | 2 commits to master since this release

    Signed by dnkl
    GPG key ID: 5BBD4992C116573F

    Fixed

    • Crash when failing to load a font.
    • Memory leak in fcft_fini() if the font cache contained entries for fonts that failed to load.

    Contributors

    • markstos
    Downloads
  • 3.3.1 ccd1afaad8

    3.3.1 Stable

    dnkl released this 2025-03-13 13:17:46 +01:00 | 14 commits to master since this release

    Signed by dnkl
    GPG key ID: 5BBD4992C116573F

    Fixed

    • Regression: binary incompatibility with fcft <= 3.2, in fcft_set_scaling_filter() (#1992).
    Downloads
  • 3.3.0 e79cb2d4f8

    3.3.0 Stable

    dnkl released this 2025-03-12 09:45:43 +01:00 | 21 commits to master since this release

    Signed by dnkl
    GPG key ID: 5BBD4992C116573F

    Added

    • scaling_filter to fcft_font_options. The default value is FCFT_SCALING_FILTER_CUBIC.
    • New scaling filters: impulse, box, linear, gaussian, lanczos3 and lanczos3_stretched.

    Changed

    • When scaling bitmap fonts (not emoji fonts), do not apply a scaling filter. In earlier versions, fcft applied a bilinear scaling filter.

    Deprecated

    • fcft_set_scaling_filter(); use fcft_font_options::scaling_filter instead.
    Downloads
  • 3.2.0 ba805cff8c

    3.2.0 Stable

    dnkl released this 2025-03-05 14:08:18 +01:00 | 32 commits to master since this release

    Signed by dnkl
    GPG key ID: 5BBD4992C116573F

    Added

    • Nanosvg updated to ea6a6aca009422bba0dbad4c80df6e6ba0c82183
    • fcft_from_name2(), allowing you to instantiate fonts and override certain rendering defaults.
    • fcft_font_options_create() and fcft_font_options_destroy(), to be used with the new fcft_from_name2().
    • fcft can now decode color glyphs from sRGB to linear, and optionally render to higher precision pixman surfaces. See the new fcft_from_name2() and fcft_font_options_create().

    Changed

    • Unicode codepoints with the emoji components tag are no longer treated as emojis, when selecting font. This fixes an issue where e.g. 0..9 were loaded from a fallback font instead of the primary font, if the primary font had the emoji language bit set (#1978).

    Deprecated

    • fcft_set_emoji_presentation() - use fcft_from_name2() instead.

    Fixed

    • Undefined behavior when using copies of mtx_t and pthread_rwlock_t objects.

    Contributors

    • CismonX
    Downloads
  • 3.1.10 a6a7ce9100

    3.1.10 Stable

    dnkl released this 2025-01-02 13:40:52 +01:00 | 55 commits to master since this release

    Signed by dnkl
    GPG key ID: 5BBD4992C116573F

    Added

    • Unicode data files updated to Unicode 16. Fcft uses these files to determine the default presentation (textual or graphical) for emojis, and to generate pre-compose tables.

    Changed

    • Use utf8proc_charwidth() instead of wcwdith() to calculate character (terminal) width, when building with utf8proc support.
    Downloads
  • 3.1.9 07210fde52

    3.1.9 Stable

    dnkl released this 2024-10-23 13:16:32 +02:00 | 63 commits to master since this release

    Signed by dnkl
    GPG key ID: 5BBD4992C116573F

    Added

    • Nanosvg updated to 93ce879dc4c04a3ef1758428ec80083c38610b1f
    • Unicode data files updated to 15.1
    • FCFT_LOG_COLORIZE_AUTO now respects the NO_COLOR environment variable.
    • Support for linking against a system provided nanosvg library. See the new -Dsystem-nanosvg meson option. Defaults to disabled (i.e. use the bundled version).

    Changed

    • Positioning of SVG glyphs; fcft now tries to center them on the line.

    Fixed

    • Log-level not respected by syslog
    • Fcft now automatically ensures the LC_NUMERIC locale is correctly configured for FcNameParse() (#60).
    • Failure to lookup font name ("warn: fcft.c:583: failed to get full font name")

    Contributors

    • Jake Waksbaum
    Downloads
  • 3.1.8 8e32809e44

    3.1.8 Stable

    dnkl released this 2024-02-26 15:53:49 +01:00 | 88 commits to master since this release

    Signed by dnkl
    GPG key ID: 5BBD4992C116573F

    Changed

    • Set font size using FT_Set_Char_Size() instead of FT_Set_Pixel_Sizes(), as it provides a more fine-grained interface, resulting in a more exact font size (#1621).
    Downloads
  • 3.1.7 22f4decd21

    3.1.7 Stable

    dnkl released this 2023-12-15 09:36:44 +01:00 | 97 commits to master since this release

    Fixed

    • Infinite loop on certain invalid fontfeatures values (#1554, #1556).
    Downloads
  • 3.1.6 63845bdce3

    3.1.6 Stable

    dnkl released this 2023-07-14 12:29:38 +02:00 | 106 commits to master since this release

    Added

    • nanosvg updated to 9da543e (2022-12-04)
    Downloads
  • 3.1.5 b3877795cd

    3.1.5 Stable

    dnkl released this 2022-09-20 19:12:21 +02:00 | 127 commits to master since this release

    Changed

    • SVG: user transformations are now ignored, instead of returning ”unimplemented feature” error.

    Fixed

    • Reverted “fixed: bitmap font glyph advance width calculation”.

      It appears that HarfBuzz <= 5.1 calculated glyph advance widths incorrectly for bitmap fonts, when bitmap font scaling has been enabled (pixelsizefixupfactor has been set in FontConfig).

      fcft-3.1.3 compensated for this when calculating the glyphs’ advance widths.

      HarfBuzz >= 5.2 changed how it calculates the advance widths, and fcft’s compensation now causes an excessive advance width.

      Thus, the patch from fcft-3.1.3 has been reverted.

      #163

    This is an ABI+API backward compatible release.

    Downloads