4.46.0 (released 2023-12-02)
----------------------------
- [featureVars] Allow to register the same set of substitution rules to multiple features.
The ``addFeatureVariations`` function can now take a list of featureTags; similarly, the
lib key 'com.github.fonttools.varLib.featureVarsFeatureTag' can now take a
comma-separateed string of feature tags (e.g. "salt,ss01") instead of a single tag (#3360).
- [featureVars] Don't overwrite GSUB FeatureVariations, but append new records to it
for features which are not already there. But raise ``VarLibError`` if the feature tag
already has feature variations associated with it (#3363).
- [varLib] Added ``addGSUBFeatureVariations`` function to add GSUB Feature Variations
to an existing variable font from rules defined in a DesignSpace document (#3362).
- [varLib.interpolatable] Various bugfixes and rendering improvements. In particular,
a new test for "underweight" glyphs. The new test reports quite a few false-positives
though. Please send feedback.
4.45.1 (released 2023-11-23)
----------------------------
- [varLib.interpolatable] Various bugfixes and improvements, better reporting, reduced
false positives.
- [ttGlyphSet] Added option to not recalculate glyf bounds (#3348).
4.45.0 (released 2023-11-20)
----------------------------
- [varLib.interpolatable] Vastly improved algorithms. Also available now is ``--pdf``
and ``--html`` options to generate a PDF or HTML report of the interpolation issues.
The PDF/HTML report showcases the problematic masters, the interpolated broken
glyph, as well as the proposed fixed version.
This works around an issue with detecting whether all required libraries are
runtime dependencies. gtk-doc is a build-only dependency, which causes bl3
to tag glib2 and all of its dependencies as build too. Later inclusion of
glib2 marks it as a full dependency, but include guards mean all of its
dependencies are not. Including glib2 first is a hack, but does resolve the
problem for now.
Victor Mono is an open-source monospaced font with optional
semi-connected cursive italics and programming symbol ligatures.
The typeface is slender, crisp and narrow, with a large x-height
and clear punctuation, making it legible and ideal for code. It
comes in seven weights and Roman, Italic and Oblique styles.
Spleen 2.0.1 (2023-11-17)
- Add a 'com' target to generate SPLEEN.COM, the DOS version of Spleen
- Also add 'com' in the 'all' target
- Update README to add a link to the Guix package
- In the Spleen loader for DOS, put 4C00h in ax and not 4Ch
- README.md: add Gentoo package link
- Switch to using Oxipng as it compresses even more than OptiPNG
- Add a new FAQ file answering frequently asked questions about Spleen
- Remove C0 control characters range in the 8x16, 16x32, and 32x64 versions
4.44.3 (released 2023-11-15)
- [subset] Only prune codepage ranges for OS/2.version >= 1, ignore otherwise
- [instancer] Ensure hhea vertical metrics stay in sync with OS/2 ones after instancing
MVAR table containing 'hasc', 'hdsc' or 'hlgp' tags
4.44.2 (released 2023-11-14)
- [glyf] Have ``Glyph.recalcBounds`` skip empty components (base glyph with no contours)
when computing the bounding box of composite glyphs. This simply restores the existing
behavior before some changes were introduced in fonttools 4.44.0
4.44.1 (released 2023-11-14)
----------------------------
- [feaLib] Ensure variable mark anchors are deep-copied while building since they
get modified in-place and later reused.
- [OS/2|subset] Added method to ``recalcCodePageRanges`` to OS/2 table class; added
``--prune-codepage-ranges`` to `fonttools subset` command
Overview of changes leading to 8.3.0
Saturday, November 11, 2023
====================================
- Improve memory barrier to fix potential segfaults.
- Various build fixes.
- Various subsetting and instancing fixes.
- Rename “hb-subset” option “--instance” to “--variations” to match the other
tools. Old option is kept as an alias.
- New API:
HB_AAT_LAYOUT_FEATURE_TYPE_CURSIVE_CONNECTION
- Deprecated API:
HB_AAT_LAYOUT_FEATURE_TYPE_CURISVE_CONNECTION
4.44.0 (released 2023-11-03)
----------------------------
- [instancer] Recalc OS/2 AvgCharWidth after instancing if default changes (#3317).
- [otlLib] Make ClassDefBuilder class order match varLib.merger's, i.e. large
classes first, then glyph lexicographic order (#3321, #3324).
- [instancer] Allow not specifying any of min:default:max values and let be filled
up with fvar's values (#3322, #3323).
- [instancer] When running --update-name-table ignore axes that have no STAT axis
values (#3318, #3319).
- [Debg] When dumping to ttx, write the embedded JSON as multi-line string with
indentation (92cbfee0d).
- [varStore] Handle > 65535 items per encoding by splitting VarData subtable (#3310).
- [subset] Handle null-offsets in MarkLigPos subtables.
- [subset] Keep East Asian spacing fatures vhal, halt, chws, vchw by default (#3305).
- [instancer.solver] Fixed case where axisDef < lower and upper < axisMax (#3304).
- [glyf] Speed up compilation, mostly around ``recalcBounds`` (#3301).
- [varLib.interpolatable] Speed it up when working on variable fonts, plus various
micro-optimizations (#3300).
- Require unicodedata2 >= 15.1.0 when installed with 'unicode' extra, contains UCD 15.1.
Instead of depending on one of the removed packages (that are now included
in the base Python packages), include batteries-included.mk to require
a Python version that supplies them.
Remove now included packages.
Bump PKGREVISION.
8.2.2
Fix regression from 8.1.0 in shaping fonts with duplicate feature tags.
Fix regression from 8.2.0 in parsing CSS-style feature strings.
Variable fonts instanciation now handles more tables.
Various CMake build improvements.
various fixes to build without errors with gcc 4.9.2.
Overview of changes leading to 8.2.1
Monday, September 18, 2023
====================================
- Unicode 15.1 support.
Overview of changes leading to 8.2.0
Friday, September 8, 2023
====================================
- Various build and fuzzing fixes
- Improvements to COLRv1 painting.
- New API:
+hb_paint_color_glyph_func_t
+hb_paint_funcs_set_color_glyph_func
+hb_paint_color_glyph
4.43.1 (released 2023-10-06)
----------------------------
- [EBDT] Fixed TypeError exception in `_reverseBytes` method triggered when dumping
some bitmap fonts with `ttx -z bitwise` option
- [v/hhea] Fixed UnboundLocalError exception in ``recalc`` method when no vmtx or hmtx
tables are present
- [bezierTools] Fixed incorrectly typed cython local variable leading to TypeError when
calling ``calcQuadraticArcLength``
- [feaLib/otlLib] Better error message when building Coverage table with missing glyph
4.43.0 (released 2023-09-29)
----------------------------
- [subset] Set up lxml ``XMLParser(resolve_entities=False)`` when parsing OT-SVG documents
to prevent XML External Entity (XXE) attacks (9f61271dc):
https://codeql.github.com/codeql-query-help/python/py-xxe/
- [varLib.iup] Added workaround for a Cython bug in ``iup_delta_optimize`` that was
leading to IUP tolerance being incorrectly initialised, resulting in sub-optimal deltas
- [varLib] Added new command-line entry point ``fonttools varLib.avar`` to add an
``avar`` table to an existing VF from axes mappings in a .designspace file (0a3360e52).
- [instancer] Fixed bug whereby no longer used variation regions were not correctly pruned
after VarData optimization
- Added support for Python 3.12
0.7.3 (2021-10-18)
=====
- Purisa, Sawasdee: now can be embeded as installable in PDF.
- TlwgTypo, TlwgTypist: fix uneven widths of some glyphs.
- TlwgTypo, TlwgTypist, TlwgMono, TlwgTypewriter: clear PANOSE to use
calculated values, so as to get listed in gvim.
(Thanks Chaiwat Suttipongsakul (@cwt) for the report.)
- Norasi: add 'onum' and 'smcp' OpenType features for access to
old style figures and small caps glyphs.
- LaTeX: Add old style figures and small caps supports for Norasi.
Leah Fonts is a collection of bitmap fonts designed by Leah Neukirchen,
for those who still prefer a crispier look over TrueType.
Included fonts are:
* sq - 7x15 pixel font inspired by Codec and Quadraat Sans Mono.
Public domain, 2012. Covers full Latin-1 range. Normal and bold.
* 5x13 - condensed pixel font built on 6x13. A well readable font that
is only five pixels wide, such that you can fit four 80-chars wide
shells next to each other on a 1600x1200 display. Partial Latin-1
support (German subset). Normal only.
* smalltalk10 - the font of the Smalltalk 80 system. A pixel perfect
restauration of the Smalltalk 80 variable width font "sans-serif 10" as
provided in the image tape by Mario Wolczko, using the emulator by Dan
Banay. Covers only printable 7-bit ASCII. Normal shape only.
Changelog:
v6.3.0
[IBM PLEX SANS VAR V1.1] - 2023-04-03
Added
glyphs /acaron /acaron.alt01 /icaron /ocaron /ucaron /udieresismacron /udieresisacute /udieresisgrave /udieresiscaron /Acaron /Icaron /Ocaron /Ucaron /Udieresismacron /Udieresisacute /Udieresisgrave /Udieresiscaron to support pinyin
referenced in issue 84
glyph /longs
referenced in issue 158
glyph /divisionslash
old-style numerals
referenced in issue 418
U+2236 RATIO
referenced in issue 199
U+2219 BULLET OPERATOR
referenced in issue 84
U+2010-U+2015 NON-BREAKING HYPHEN, DASHES, etc.
referenced in issue 84
referenced in issue 317
U+2028 LINE SEPERATOR
referenced in issue 52
U+2029 PARAGRAPH SEPERATOR
referenced in issue 52
U+202F NARROW NO-BREAK SPACE
referenced in issue 282
U+2008 PUNCTUATION SPACE
U+200A HAIR SPACE
referenced in issue 361
U+200B ZERO WIDTH SPACE
referenced in issue 84
referenced in issue 318
Fixed
FamilyClass value in OS/2 table
referenced in issue 330
STAT table; Roman and Italic styles are correctly linked in various environments now
incorrect behaviour in Adobe InDesign
referenced in issue 337
inconsistencies in vertical alignment
referenced in issue 377
Changed
replaced commaaccent with cedilla in glyphs /Tcedilla /tcedilla
referenced in issue 251
disabled bit 38 (Mathematical Operators) from OS/2 UnicodeRanges
improved hinting
v6.2.0
[IBM PLEX SERIF V3.0]
Added
Support for monotonic Greek (74 glyphs per font)
v6.1.1
[IBM PLEX SERIF]
Fixed
#469 Serif TTF files have been corrected
v6.1.0
[IBM PLEX SERIF V2.8] - 2022-08-05
Added
glyphs /acaron /acaron.alt01 /icaron /ocaron /ucaron /udieresismacron /udieresisacute /udieresisgrave /udieresiscaron /Acaron /Icaron /Ocaron /Ucaron /Udieresismacron /Udieresisacute /Udieresisgrave /Udieresiscaron to support pinyin
referenced in issue 84
glyph /longs
referenced in issue 158
glyph /divisionslash
old-style numerals
referenced in issue 418
Cyrillic support for Abkhaz language
referenced in issue 355
support for pre-1918 Cyrillic
referenced in issue 158
U+2236 RATIO
referenced in issue 199
U+2219 BULLET OPERATOR
referenced in issue 84
U+2010-U+2015 NON-BREAKING HYPHEN, DASHES, etc.
referenced in issue 84
referenced in issue 317
U+2028 LINE SEPERATOR
referenced in issue 52
U+2029 PARAGRAPH SEPERATOR
referenced in issue 52
U+202F NARROW NO-BREAK SPACE
referenced in issue 282
U+2008 PUNCTUATION SPACE
U+200A HAIR SPACE
referenced in issue 361
U+200B ZERO WIDTH SPACE
referenced in issue 84
referenced in issue 318
Fixed
FamilyClass value in OS/2 table
referenced in issue 330
PostScript BlueScale values
Changed
Improved shape for Cyrillic letter Fita (U+0473, U+0472)
referenced in issue 158
replaced commaaccent with cedilla in glyphs /Tcedilla /tcedilla
referenced in issue 251
disabled bit 38 (Mathematical Operators) from OS/2 UnicodeRanges
[IBM PLEX SANS CONDENSED V1.4] - 2022-07-28
Added
old-style numerals
referenced in issue 418
U+2236 RATIO
referenced in issue 199
U+2219 BULLET OPERATOR
referenced in issue 84
U+2010-U+2015 NON-BREAKING HYPHEN, DASHES, etc.
referenced in issue 84
referenced in issue 317
U+2028 LINE SEPERATOR
referenced in issue 52
U+2029 PARAGRAPH SEPERATOR
referenced in issue 52
U+202F NARROW NO-BREAK SPACE
referenced in issue 282
U+2008 PUNCTUATION SPACE
U+200A HAIR SPACE
referenced in issue 361
U+200B ZERO WIDTH SPACE
referenced in issue 84
referenced in issue 318
Fixed
FamilyClass value in OS/2 table
referenced in issue 330
PostScript BlueScale values
[IBM PLEX SANS V3.4] - 2022-07-28
Added
old-style numerals
referenced in issue 418
Cyrillic support for Abkhaz language
referenced in issue 355
support for pre-1918 Cyrillic
referenced in issue 158
U+2236 RATIO
referenced in issue 199
U+2219 BULLET OPERATOR
referenced in issue 84
U+2010-U+2015 NON-BREAKING HYPHEN, DASHES, etc.
referenced in issue 84
referenced in issue 317
U+2028 LINE SEPERATOR
referenced in issue 52
U+2029 PARAGRAPH SEPERATOR
referenced in issue 52
U+202F NARROW NO-BREAK SPACE
referenced in issue 282
U+2008 PUNCTUATION SPACE
U+200A HAIR SPACE
referenced in issue 361
U+200B ZERO WIDTH SPACE
referenced in issue 84
referenced in issue 318
Fixed
FamilyClass value in OS/2 table
referenced in issue 330
PostScript BlueScale values
Changed
Improved shape for Cyrillic letter Fita (U+0473, U+0472)
referenced in issue 158
v6.0.2
Changes in v6.0.2
[IBM PLEX SANS, SANS CONDENSED, MONO, SERIF] - 2022-05-10
Changed
Update split font files to make font features available (ligatures, dotted zero, etc)
[IBM PLEX SANS KR V1.2] - 2021-09-13
Changed
abbreviated font names used for style mapping (name ID1 + ID2) to improve interoperability
v6.0.1
Changes in 6.0.1
[Unreleased]
IBM Plex Sans CN
[IBM PLEX SANS ARABIC V1.4] - 2022-02-16
Fixed
Incorrect shape for U+08A4 (ARABIC LETTER FEH WITH DOT BELOW AND THREE DOTS ABOVE) and related glyphs
referenced in issue 429
[IBM PLEX SANS JP V1.1] - 2021-12-06
Fixed
Outline interpolation errors in glyphs /uni95B9 and /asterisk.rotat
referenced in issue 404
referenced in issue 405
Small errors in head table
Small errors in hhea table
Changelog:
v6.3.0
[IBM PLEX SANS VAR V1.1] - 2023-04-03
Added
glyphs /acaron /acaron.alt01 /icaron /ocaron /ucaron /udieresismacron /udieresisacute /udieresisgrave /udieresiscaron /Acaron /Icaron /Ocaron /Ucaron /Udieresismacron /Udieresisacute /Udieresisgrave /Udieresiscaron to support pinyin
referenced in issue 84
glyph /longs
referenced in issue 158
glyph /divisionslash
old-style numerals
referenced in issue 418
U+2236 RATIO
referenced in issue 199
U+2219 BULLET OPERATOR
referenced in issue 84
U+2010-U+2015 NON-BREAKING HYPHEN, DASHES, etc.
referenced in issue 84
referenced in issue 317
U+2028 LINE SEPERATOR
referenced in issue 52
U+2029 PARAGRAPH SEPERATOR
referenced in issue 52
U+202F NARROW NO-BREAK SPACE
referenced in issue 282
U+2008 PUNCTUATION SPACE
U+200A HAIR SPACE
referenced in issue 361
U+200B ZERO WIDTH SPACE
referenced in issue 84
referenced in issue 318
Fixed
FamilyClass value in OS/2 table
referenced in issue 330
STAT table; Roman and Italic styles are correctly linked in various environments now
incorrect behaviour in Adobe InDesign
referenced in issue 337
inconsistencies in vertical alignment
referenced in issue 377
Changed
replaced commaaccent with cedilla in glyphs /Tcedilla /tcedilla
referenced in issue 251
disabled bit 38 (Mathematical Operators) from OS/2 UnicodeRanges
improved hinting
v6.2.0
[IBM PLEX SERIF V3.0]
Added
Support for monotonic Greek (74 glyphs per font)
v6.1.1
[IBM PLEX SERIF]
Fixed
#469 Serif TTF files have been corrected
v6.1.0
[IBM PLEX SERIF V2.8] - 2022-08-05
Added
glyphs /acaron /acaron.alt01 /icaron /ocaron /ucaron /udieresismacron /udieresisacute /udieresisgrave /udieresiscaron /Acaron /Icaron /Ocaron /Ucaron /Udieresismacron /Udieresisacute /Udieresisgrave /Udieresiscaron to support pinyin
referenced in issue 84
glyph /longs
referenced in issue 158
glyph /divisionslash
old-style numerals
referenced in issue 418
Cyrillic support for Abkhaz language
referenced in issue 355
support for pre-1918 Cyrillic
referenced in issue 158
U+2236 RATIO
referenced in issue 199
U+2219 BULLET OPERATOR
referenced in issue 84
U+2010-U+2015 NON-BREAKING HYPHEN, DASHES, etc.
referenced in issue 84
referenced in issue 317
U+2028 LINE SEPERATOR
referenced in issue 52
U+2029 PARAGRAPH SEPERATOR
referenced in issue 52
U+202F NARROW NO-BREAK SPACE
referenced in issue 282
U+2008 PUNCTUATION SPACE
U+200A HAIR SPACE
referenced in issue 361
U+200B ZERO WIDTH SPACE
referenced in issue 84
referenced in issue 318
Fixed
FamilyClass value in OS/2 table
referenced in issue 330
PostScript BlueScale values
Changed
Improved shape for Cyrillic letter Fita (U+0473, U+0472)
referenced in issue 158
replaced commaaccent with cedilla in glyphs /Tcedilla /tcedilla
referenced in issue 251
disabled bit 38 (Mathematical Operators) from OS/2 UnicodeRanges
[IBM PLEX SANS CONDENSED V1.4] - 2022-07-28
Added
old-style numerals
referenced in issue 418
U+2236 RATIO
referenced in issue 199
U+2219 BULLET OPERATOR
referenced in issue 84
U+2010-U+2015 NON-BREAKING HYPHEN, DASHES, etc.
referenced in issue 84
referenced in issue 317
U+2028 LINE SEPERATOR
referenced in issue 52
U+2029 PARAGRAPH SEPERATOR
referenced in issue 52
U+202F NARROW NO-BREAK SPACE
referenced in issue 282
U+2008 PUNCTUATION SPACE
U+200A HAIR SPACE
referenced in issue 361
U+200B ZERO WIDTH SPACE
referenced in issue 84
referenced in issue 318
Fixed
FamilyClass value in OS/2 table
referenced in issue 330
PostScript BlueScale values
[IBM PLEX SANS V3.4] - 2022-07-28
Added
old-style numerals
referenced in issue 418
Cyrillic support for Abkhaz language
referenced in issue 355
support for pre-1918 Cyrillic
referenced in issue 158
U+2236 RATIO
referenced in issue 199
U+2219 BULLET OPERATOR
referenced in issue 84
U+2010-U+2015 NON-BREAKING HYPHEN, DASHES, etc.
referenced in issue 84
referenced in issue 317
U+2028 LINE SEPERATOR
referenced in issue 52
U+2029 PARAGRAPH SEPERATOR
referenced in issue 52
U+202F NARROW NO-BREAK SPACE
referenced in issue 282
U+2008 PUNCTUATION SPACE
U+200A HAIR SPACE
referenced in issue 361
U+200B ZERO WIDTH SPACE
referenced in issue 84
referenced in issue 318
Fixed
FamilyClass value in OS/2 table
referenced in issue 330
PostScript BlueScale values
Changed
Improved shape for Cyrillic letter Fita (U+0473, U+0472)
referenced in issue 158
v6.0.2
Changes in v6.0.2
[IBM PLEX SANS, SANS CONDENSED, MONO, SERIF] - 2022-05-10
Changed
Update split font files to make font features available (ligatures, dotted zero, etc)
[IBM PLEX SANS KR V1.2] - 2021-09-13
Changed
abbreviated font names used for style mapping (name ID1 + ID2) to improve interoperability
v6.0.1
Changes in 6.0.1
[Unreleased]
IBM Plex Sans CN
[IBM PLEX SANS ARABIC V1.4] - 2022-02-16
Fixed
Incorrect shape for U+08A4 (ARABIC LETTER FEH WITH DOT BELOW AND THREE DOTS ABOVE) and related glyphs
referenced in issue 429
[IBM PLEX SANS JP V1.1] - 2021-12-06
Fixed
Outline interpolation errors in glyphs /uni95B9 and /asterisk.rotat
referenced in issue 404
referenced in issue 405
Small errors in head table
Small errors in hhea table
# Changes (local)
* Host tarball (retrieved from archive.org) on NetBSD's FTP server.
* Move HOMEPAGE (unreachable) to last archived snapshot at archive.org.
* Add missing LICENSE.
* Link against FreeType2 (instead of freetype-lib), as well as libXpm.
* Enable support for Hanzi Bitmap Font (HBF) File Format.
* Fix a number of compiler warnings.
* Remove patches/patch-ab (fixed upstream).
* Rename remaining patches to match target files.
* Install official pixmap, alongide a .desktop application file.
* Add MESSAGE (stripped from installation instructions).
* Lint package.
# Changes (upstream)
Version: 4.7
Date : 23 February 2004
==========================
1. Completely revamped the PSF font import/export system to make it
actually useable.
2. Changed to use FreeType 2. FreeType 1 no longer supported.
3. Changed to use a fallback of the 75dpi New Century Schoolbook for RH
distributions that don't come with the 100dpi.
4. Fixed a problem with the OpenType hinting flag not being updated after
being changed.
5. Changed all TrueType references to OpenType to reflect the move to
FreeType 2.
6. Renamed some of the files that referred to TrueType (bdfttf.c and ttfin.c
renamed to bdfotf.c and otfin.c).
7. Removed an unecessary copy when padding character cell glyphs.
8. Some minor documentation improvements.
9. Fixed several serious problems loading Windows FON/FNT fonts.
10. Added comments about conversion to imported FON/FNT fonts.
11. Added comments about conversion to imported OTF fonts.
12. Fixed a previously unnoticed problem with font comment strings not being
NULL terminated properly.
Version: 4.6
Date : 29 January 2004
==========================
1. Fixed a problem with FON/FNT fonts that have the names at the very end of
the file.
2. Released as Linux binary only.
Alan Coopersmith (1):
Remove "All rights reserved" from Oracle copyright notices
Peter Hutterer (2):
Replace unicode files with ones that provide better terms of use
font-util 1.4.1
This package includes a set of bitmap fonts derived from the
artwiz-fonts collection. These fonts are rather small and make
a good fit for old CRTs and lower display resolutions.
Included fonts are:
* lime: improved version of artwiz-lime with better kerning, distinct
characters, extended unicode support, Powerline compatibility, and
in-built icon characters.
* antidote: artwiz-cure mod with lemon-like characters.
* uushi: monaco mod.
* limey: artwiz-lime mod by @spectrum that served as the basis for
lemon.
* berry: monaco mod by @spectrum, with the addition of a Bold variant.
Marc Lehman's bitmap font designed for low resolution displays.
Suxus is a mod of nexus and tixus fonts with the addition of the
missing VT-100 graphical characters, Latin-9 enconding support and
improved readibility.
Overview of changes leading to 8.1.1
Wednesday, August 2, 2023
====================================
- Fix shaping of contextual rules at the end of string, introduced in 8.1.0
- Fix stack-overflow in repacker with malicious fonts.
- 30% speed up loading Noto Duployan font.
Overview of changes leading to 8.1.0
Tuesday, August 1, 2023
====================================
- Fix long-standing build issue with the AIX compiler and older Apple clang.
- Revert optimization that could cause timeout during subsetting with malicious fonts.
- More optimization work:
- 45% speed up in shaping Noto Duployan font.
- 10% speed up in subsetting Noto Duployan font.
- Another 8% speed up in shaping Gulzar.
- 5% speed up in loading Roboto.
- New API:
+hb_ot_layout_collect_features_map()
4.42.1 (released 2023-08-20)
----------------------------
- [t1Lib] Fixed several Type 1 issues
- [otBase/packer] Allow sharing tables reached by different offset sizes
- [varLib/merger] Fix Cursive attachment merging error when all anchors are NULL
- [ttLib] Fixed warning when calling ``addMultilingualName`` and ``ttFont`` parameter was not
passed on to ``findMultilingualName``
4.42.0 (released 2023-08-02)
----------------------------
- [varLib] Use sentinel value 0xFFFF to mark a glyph advance in hmtx/vmtx as non
participating, allowing sparse masters to contain glyphs for variation purposes other
than {H,V}VAR
- [varLib/cff] Treat empty glyphs in non-default masters as missing, thus not participating
in CFF2 delta computation, similarly to how varLib already treats them for gvar
- Added varLib.avarPlanner script to deduce 'correct' avar v1 axis mappings based on
glyph average weights
4.41.1 (released 2023-07-21)
----------------------------
- [subset] Fixed perf regression in v4.41.0 by making ``NameRecordVisitor`` only visit
tables that do contain nameID references
- [varLib.instancer] Support instancing fonts containing null ConditionSet offsets in
FeatureVariationRecords
- [statisticsPen] Report font glyph-average weight/width and font-wide slant.
- [fontBuilder] Fixed head.created date incorrectly set to 0 instead of the current
timestamp, regression introduced in v4.40.0
- [varLib.merger] Support sparse ``CursivePos`` masters
Overview of changes leading to 8.0.1
Wednesday, July 12, 2023
====================================
- Build fix on 32-bit arm.
- More speed optimizations:
- 60% speedup in retaingids subsetting SourceHanSans-VF.
- 38% speed up in subsetting (beyond-64k) mega-merged Noto.
- 16% speed up in retain-gid (used for IFT) subsetting of NotoSansCJKkr.
Overview of changes leading to 8.0.0
Sunday, July 9, 2023
====================================
- New, experimental, WebAssembly (WASM) shaper, that provides greater
flexibility over OpenType/AAT/Graphite shaping, using WebAssembly embedded
inside the font file. Currently WASM shaper is disabled by default and needs
to be enabled at build time. For details, see:
https://github.com/harfbuzz/harfbuzz/blob/main/docs/wasm-shaper.md
For example fonts making use of the WASM shaper, see:
https://github.com/simoncozens/wasm-examples
- Improvements to Experimental features introduced in earlier releases:
- Support for subsetting beyond-64k and VarComposites fonts.
- Support for instancing variable fonts with cubic “glyf” table.
- Many big speed optimizations:
- Up to 89% speedup loading variable fonts for shaping.
- Up to 88% speedup in small subsets of large (eg. CJK) fonts (both TTF and
OTF), essential for Incremental Font Transfer (IFT).
- Over 50% speedup in loading Roboto font for shaping.
- Up to 40% speed up in loading (sanitizing) complex fonts.
- 30% speed up in shaping Gulzar font.
- Over 25% speedup in glyph loading Roboto font.
- 10% speed up loading glyph shapes in VarComposite Hangul font.
- hb-hashmap optimizations & hashing improvements.
- New macro HB_ALWAYS_INLINE. HarfBuzz now inlines functions more aggressively,
which results in some speedup at the expense of bigger code size. To disable
this feature define the macro to just inline.
- New API:
+HB_CODEPOINT_INVALID
+hb_ot_layout_get_baseline2()
+hb_ot_layout_get_baseline_with_fallback2()
+hb_ot_layout_get_font_extents()
+hb_ot_layout_get_font_extents2()
+hb_subset_input_set_axis_range()