10694 Commits

Author SHA1 Message Date
Behdad Esfahbod
77c00719ba [designspaceLib/avar2] Add split test 2023-05-30 23:39:19 -06:00
Behdad Esfahbod
ca642e89c4 [designspaceLib/avar2] First stab at splitting mappings 2023-05-30 23:03:33 -06:00
Behdad Esfahbod
ce0a32d1a4 [varLib.builder] Fixup 2023-05-30 22:46:47 -06:00
Behdad Esfahbod
a8f9fa98ec [designspaceLib/docs] varLib spelling 2023-05-30 22:36:00 -06:00
Behdad Esfahbod
2740f98c9e [designspaceLib/avar2] More docs 2023-05-30 22:32:18 -06:00
Behdad Esfahbod
1b7c0bf19b [designspaceLib/avar2] Adjust version to 5.1 when writing mappings 2023-05-30 22:23:42 -06:00
Behdad Esfahbod
d513e563ff [designspaceLib/avar2] Add XML docs 2023-05-30 22:16:46 -06:00
Behdad Esfahbod
0184c91ce8 [designspaceLib/test] Fix Windows bot failure 2023-05-30 13:51:43 -06:00
Behdad Esfahbod
a99a75e8a6 [varLib/avar2] Use buildDeltaSetIndexMap()
Also change buildDeltaSetIndexMap() to move the identity
optimization there. Update the only other callsite (COLRv2).
2023-05-30 13:30:36 -06:00
Behdad Esfahbod
a08acf41f8 [varLib/avar2] Omit identity VarIdx map 2023-05-30 13:22:12 -06:00
Behdad Esfahbod
d915f08e76 [varLib/avar2] Don't require base master to be specified explicitly
We can deduce it as empty mapping.
2023-05-30 13:13:49 -06:00
Behdad Esfahbod
ff7f49a94c [varLib/avar2] Add compile test 2023-05-30 13:13:49 -06:00
Behdad Esfahbod
aabb26ed69 [designspaceLib/avar2] Add roundtrip test 2023-05-30 12:21:42 -06:00
Behdad Esfahbod
246d539e29 [designspaceLib/avar2] Warn if input location missing for an output axis
https://github.com/fonttools/fonttools/pull/3123#issuecomment-1568852694
2023-05-30 12:10:15 -06:00
Behdad Esfahbod
588cbc982d [designspaceLib/avar2] Rename variables 2023-05-30 11:55:48 -06:00
Behdad Esfahbod
e587942b68 [designspaceLib/avar2] Add tests 2023-05-28 17:35:10 -06:00
Behdad Esfahbod
90e8595ef0 [designspaceLib/avar2] Document 2023-05-28 16:58:30 -06:00
Behdad Esfahbod
ae2305196a [designspaceLib/avar2] Store axis name, not tag, in <dimension> 2023-05-28 15:14:25 -06:00
Behdad Esfahbod
3a809dbbf3 [designspaceLib/avar2] Write out <mappings> element 2023-05-28 15:14:25 -06:00
Behdad Esfahbod
50b1fb3f01 [designspaceLib/avar2] Rename elements to <mappings><mapping> 2023-05-28 15:14:25 -06:00
Behdad Esfahbod
f27e843276 [designspaceLib/avar2] Flesh out AxisMapping API 2023-05-28 15:14:25 -06:00
Behdad Esfahbod
0b57567c14 [designspaceLib/avar2] Add AxisMappingDescriptor 2023-05-28 15:14:25 -06:00
Behdad Esfahbod
be9dacad74 [designspaceLib/avar2] Rename mapping to axisMappings 2023-05-28 15:14:25 -06:00
Behdad Esfahbod
5785fdeec3 [avar2] Emit the difference of input vs output 2023-05-28 15:14:25 -06:00
Behdad Esfahbod
b9e03b165b [avar2] Rewrite loop 2023-05-28 15:14:25 -06:00
Behdad Esfahbod
50fc8218b3 [designspace/varLib] Hack to read avar2 mapping and build avar2 table
This just uses list of list of dictionaries. Should use proper objects.

https://github.com/fonttools/fonttools/issues/3049

https://github.com/harfbuzz/boring-expansion-spec/blob/main/avar2-in-designspace.md
2023-05-28 15:14:25 -06:00
David Corbett
b8dcb85161 [otlLib] Fix error message in MarkBasePosBuilder 2023-05-28 20:29:49 +02:00
خالد حسني (Khaled Hosny)
96bede39e7
Merge pull request #3132 from fonttools/fealib-simplify-variablescaler
[feaLib] Simplify variable scalars that don’t vary
2023-05-27 18:20:27 +03:00
Khaled Hosny
fd854d70d8 [feaLib] Simplify variable scalars that don’t vary
If a variable scalar does not vary (i.e. all values are the same), we
can simplify it and use a simple value instead. Arguably users shouldn’t
be using variable scalar in this case, but it helps when the feature
code is auto generated so each feaLib users doesn’t have to do the
check done here themselves.
2023-05-27 02:56:11 +03:00
Khaled Hosny
f8abda4570 [feaLib] Refactor-out builder code handling variable scalars
Refactor-out this piece of code to simplify the next commit.
2023-05-27 02:55:07 +03:00
Behdad Esfahbod
bf77873d5a
Merge pull request #3127 from fonttools/varStore-optimize-more
[varStore.optimize] Use better algorithm

https://github.com/fonttools/fonttools/pull/3127
2023-05-25 20:44:18 +02:00
Behdad Esfahbod
59058bb54f [varStore.optimize] Address review comment
Harmless thinko.
2023-05-25 12:24:46 -06:00
Behdad Esfahbod
4e7cdeb8b1 [varStore.optimize] More idiomatic 2023-05-25 11:35:50 -06:00
Behdad Esfahbod
0a239f15d8 [varStore.optimize] Comment 2023-05-25 11:33:08 -06:00
Behdad Esfahbod
f5e62a1375 [varLib.optimize] Minor more idiomatic 2023-05-25 10:54:13 -06:00
Behdad Esfahbod
dbc91b1b5b [varStore.optimize] Remove unused variable 2023-05-25 08:52:13 -06:00
Behdad Esfahbod
12aba9070f [varStore.optimize] Combine a couple of loops 2023-05-25 08:50:01 -06:00
Behdad Esfahbod
b0a0f74492 [varStore.optimize] Speed up some more 2023-05-25 08:47:47 -06:00
Behdad Esfahbod
b6ebb4c411 [varStore.optimize] Further speedup 2023-05-25 08:45:53 -06:00
Behdad Esfahbod
d8fabfa362 [varStore.optimize] Remove unused method 2023-05-25 08:28:12 -06:00
Behdad Esfahbod
832f2f766f [varStore.optimize] Use faster intTools.bit_count as popcount 2023-05-25 08:19:15 -06:00
Behdad Esfahbod
9cbde09cdc [varStore.optimize] Speed up 2023-05-25 08:09:27 -06:00
Behdad Esfahbod
f12f3d863c [varStore.optimize] Remove unused best_new_encoding 2023-05-25 07:56:33 -06:00
Behdad Esfahbod
da305615d0 [varStore.optimize] Simplify algorithm
Produces better results even.
2023-05-25 07:49:13 -06:00
Behdad Esfahbod
47ec18f788 [varStore] Better optimize() algorithm
See comments.

Produces better results.
2023-05-25 07:39:41 -06:00
Behdad Esfahbod
93d87df315 [varStore] Refactor code into a method 2023-05-25 07:12:27 -06:00
Behdad Esfahbod
035529883c [varStore] Minor rename a method 2023-05-25 07:06:48 -06:00
Behdad Esfahbod
c1ab8995f2 [varStore] Minor adjustment to the optimize() algorithm
It's very unlikely that this path is needed, but it's correct
to have it.
2023-05-25 07:00:28 -06:00
Behdad Esfahbod
5255c01bcc
Merge pull request #3126 from fonttools/varStore-quantize
Var store quantize
2023-05-25 14:26:47 +02:00
Behdad Esfahbod
a08f5ebbc9 [varStore] Update comment 2023-05-25 06:24:00 -06:00