7419 Commits

Author SHA1 Message Date
Cosimo Lupo
db0b499558 Release 4.55.6 2025-01-24 18:59:56 +00:00
Cosimo Lupo
bddedc1bc1 restrict the rounding to where strictly needed
we don't need to round all simple glyphs' coordinates (which may be costly), only when these are used as components with an interesting transform
2025-01-24 18:05:18 +00:00
Cosimo Lupo
4ea10eb88f [glyf] fix rounding of bbox for nested transformed components
when getCoordinates is asked to round, e.g. from recalcBounds, only round the simple glyphs' coordinates; don't do any rounding for the coordinates of component glyphs otherwise rounding errors would accummulate if a composite glyph contains transformed/nested components
2025-01-24 15:10:18 +00:00
Cosimo Lupo
48a4b76332 Reapply "Bump version: 4.55.5 → 4.55.6.dev0"
This reverts commit b1ba6870af7812fa5e92e72b703dd4a06f098092.
2025-01-23 12:21:31 +00:00
Cosimo Lupo
b1ba6870af Revert "Bump version: 4.55.5 → 4.55.6.dev0"
This reverts commit 00b7bb958fb85244f09b347ce33a031d3a571b59.
2025-01-23 12:19:47 +00:00
Cosimo Lupo
00b7bb958f Bump version: 4.55.5 → 4.55.6.dev0 2025-01-23 11:31:13 +00:00
Cosimo Lupo
dcf0d5abb2 Release 4.55.5 2025-01-23 11:31:13 +00:00
Cosimo Lupo
cf20a14453
Merge pull request #3750 from fonttools/recalcBounds-round-coords
[glyf] fix bbox of transformed components with un-rounded coordinates
2025-01-23 11:26:50 +00:00
Cosimo Lupo
ec5d41929f [glyf] fix recalcBounds of transformed components with unrounded coordinates
Fixes https://github.com/googlefonts/fontc/issues/1206
2025-01-23 11:19:30 +00:00
Colin Rofls
6bc5d7f887 [feaLib] Allow duplicate script/language statements
And accumulate all of the declared lookups into the appropriate feature.
2025-01-22 12:58:44 -05:00
Cosimo Lupo
46cb2d078a Bump version: 4.55.4 → 4.55.5.dev0 2025-01-21 15:06:25 +00:00
Cosimo Lupo
7222152a41 Release 4.55.4 2025-01-21 15:06:25 +00:00
Cosimo Lupo
70fb77884c
Merge pull request #3719 from fonttools/statisticsControlPen-fix
[StatisticsControlPen] Fix uninitialized variable
2025-01-21 14:03:04 +00:00
Cosimo Lupo
49cd3c3265
Merge pull request #3732 from andrewsuzuki/fix-name-table-names-attr
Ensure names attr exists on table__n_a_m_e
2025-01-21 14:00:44 +00:00
Colin Rofls
fc32bca017 [bezierTools] Improve robustness of splitCubicAtT 2025-01-17 12:20:29 -05:00
Simon Cozens
cb159dea72
Black (#3736) 2025-01-07 08:23:24 +00:00
梁海 Liang Hai
b497b5de60
Correct docstring of AlternateSubstStatement (#3735) 2025-01-07 07:31:08 +00:00
Harry Dalton
ef07e3b2cc Add further type annotations 2025-01-03 13:16:17 -07:00
Harry Dalton
2865d19ff0 Remove redundant inline imports
Since the addition of `DecomposedTransform`, we have had a top-level
import of `math` to depend on.
2025-01-03 13:16:17 -07:00
Harry Dalton
c00bc6fecf Explicitly type arguments that are more liberal than their default value
This avoids pitfalls from type checkers having to work with limited
information, e.g., a type checker may implicitly assume that only
integers are expected where a default value is 1, whereas in reality any
float is accepted.
2025-01-03 13:16:17 -07:00
Andrew Suzuki
68dbfba5c4 Ensure names attr exists on table__n_a_m_e 2024-12-22 10:44:06 -05:00
Rod S
7e374c53da Bump version: 4.55.3 → 4.55.4.dev0 2024-12-10 12:59:30 -08:00
Rod S
8e5c1bf7e9 Release 4.55.3 2024-12-10 12:59:30 -08:00
Colin Rofls
4b9f5ef605 [feaLib] More efficient inline format 4 lookups
With this patch we will now reuse lookups more frequently when a
contextual lookup has inline ligature substitution rules.
2024-12-10 09:51:05 -07:00
n8willis
02cc44530b
Merge pull request #3716 from n8willis/master
[Docs] Fill out ttLib table section. Part of a bottom-up docs rework for ttLib.

Note that 23546cf changes the `import`s for ttLib/tables/_g_v_a_r.py to un-confuse autodoc.
2024-12-06 12:16:54 +00:00
Nathan Williis
23546cfaa9 [Docs] Import TupeVariation class directly in gvar table module. Fixes a Sphinx autodoc confusion. 2024-12-06 11:38:09 +00:00
Nathan Williis
314eee05c7 [Docs] Fix docstring typo in gcid table module. 2024-12-06 11:37:17 +00:00
Behdad Esfahbod
d533e8bd39 [StatisticsControlPen] Fix uninitialized variable
An open contour was hitting this because _startingPoint wasn't
set.

Fixes https://github.com/fonttools/fonttools/issues/3527
2024-12-05 14:19:08 -07:00
Khaled Hosny
eb305519a8 Bump version: 4.55.2 → 4.55.3.dev0 2024-12-05 15:46:27 +02:00
Khaled Hosny
827da6731d Release 4.55.2 2024-12-05 15:46:26 +02:00
خالد حسني (Khaled Hosny)
26590d3d6e
[feaLib] Don’t modify variable anchors in place (#3717)
When passing a parsed feature file that has variable anchors to
addOpenTypeFeatures(), builder would modify the anchors in place and
discard the variations, which break any subsequent use of the feature
file.

I encountered this building a font that has variable cursing anchors
with ufo2ft. The cursFeatureWriter would write the variable anchors, but
then when kernFeatreWriter compiles the file to get GSUB closure, the
variation would be dropped from the anchors, and later when when the
feature data is compiled into the font, the anchors would be compiled
without variations.
2024-12-05 12:09:44 +00:00
Nathan Williis
e5eb053105 Docs: add boilerplate docstrings to table converters. Mostly links to reference specs. 2024-12-04 15:58:46 +00:00
Ryan Bugden
0f840042e1 Allow axisOrdering to be set to zero
Fixes https://github.com/fonttools/fonttools/issues/3710
2024-12-03 15:22:13 -05:00
rsheeter
a1a69e40db Bump version: 4.55.1 → 4.55.2.dev0 2024-12-03 08:33:18 -08:00
rsheeter
383fc3fad7 Release 4.55.1 2024-12-03 08:33:18 -08:00
Behdad Esfahbod
1773f7b0ad [ttGlyphSet] Support VARC CFF2 fonts 2024-12-02 13:59:39 -07:00
Colin Rofls
d6f3c51895 [varLib] "Fix" cython iup issue?
In some cases we were seeing different output from iup depending on
whether or not we were running cython code.

I've tracked this particular issue down to the line that is changed in
this diff, and the change introduced in this diff does (locally, for me,
on one machine with one architecture and one compiler) seem to suppress
the problem.

However... it feels pretty bad??

I'm not sure how motivated I am to try and generate a proper minimal
test case and try to get this fixed upstream. I guess I'm.. medium
motivated? But at the very least it would be nice to figure out a more
robust way to prevent this optimization from happening, and at the very
_very_ least it would be nice to figure out away to test this.

The solution I was hoping for was some way to write some actual
hand-written C so we could have finer-grained control over what's going
on, and use that just for this one little bit of arithmetic, but I
didn't see an easy way to do that.
2024-11-27 23:07:39 -07:00
Behdad Esfahbod
e037cea726 [cython] Simplify COMPILED variables 2024-11-27 22:53:16 -07:00
Behdad Esfahbod
3fe083e8d1 [DecomposedTransform] Document and implement always skewY == 0
Spotted by Cosimo. I convinced myself he is right, since a and b
are zero in that branch.
2024-11-22 01:18:33 -07:00
Behdad Esfahbod
b8635fee62 [cffLib.transforms] Handle an attribute error
Fixes https://github.com/fonttools/fonttools/issues/3695
2024-11-21 14:21:20 -07:00
Rod S
b90ac3c29f Bump version: 4.55.0 → 4.55.1.dev0 2024-11-14 09:00:08 -08:00
Rod S
6ad1c3192a Release 4.55.0 2024-11-14 09:00:08 -08:00
Cosimo Lupo
b371f23760 fontBuilder: don't add mac names for fvar and STAT if name table hasn't any 2024-11-14 12:57:44 +01:00
Cosimo Lupo
d2ce6e075c check for mac names in buildVFStatTable for DSv5 sources with STAT data 2024-11-14 12:57:44 +01:00
rsheeter
991e7914e3 Lets not add inconsistent names? 2024-11-13 16:17:56 -08:00
Behdad Esfahbod
a8462a65c5 [specializer] Use "is None" 2024-11-12 20:17:50 -07:00
Behdad Esfahbod
751d1383af [specializer] Reuse list len()'s 2024-11-12 20:15:38 -07:00
Behdad Esfahbod
cfba1f995f [cffLib.specializer] Make command-merging linear again
The consideration for blends had made it into O(n^2).
Make it linear again.

Speeds up Tests/cffLib/specializer_test.py::CFFSpecializeProgramTest::test_maxstack_blends
3x for me.
2024-11-12 18:43:03 -07:00
Behdad Esfahbod
7e6d31569f [cffLib.specializer] Adjust stack use calculation
See comment.
2024-11-12 17:47:52 -07:00
Behdad Esfahbod
f1d3e116d5
Merge pull request #3672 from googlefonts/cmap14
[subset] consider variation selectors subsetting cmap14
2024-11-11 13:45:36 -07:00