2207 Commits

Author SHA1 Message Date
ftCLI
1cb153b2c5 Remove unused imports from reorderGlyphs.py 2024-11-05 17:42:26 +01:00
ftCLI
a238ed2c31 Remove '.notdef' glyph handling code 2024-11-05 17:10:39 +01:00
ftCLI
ea59c39e21 Ensure '.notdef' is first glyph and update CFF table 2024-11-05 16:36:36 +01:00
Khaled Hosny
101ff1508c [removeOverlaps] Pass None to T2CharStringPen if widths equals defaultWidthX 2024-10-12 01:45:32 +03:00
Khaled Hosny
40b525c1e3 [removeOverlaps] Fix CFF CharString width
The width argument of `T2CharStringPen()` is inserted directly into the
CharString program, so it must be relative to Private.nominalWidthX, but
CharString.width is a calculated absolute value.

Some implementations, notably Adobe’s, will use the width from the CFF
CharString instead of the one from hmtx table.

Fixes https://github.com/fonttools/fonttools/issues/3658
2024-10-12 01:22:17 +03:00
Behdad Esfahbod
e8146a6d07 [glyf] Add optimizeSize option
Set to True by default. Can be turned to False on the table,
or at Glyph() compile time.

Also fixes Glyph's draw() to expand the glyph first. Otherwise
it was failing.
2024-10-11 08:31:31 -06:00
Behdad Esfahbod
6c2cbc273d [otConverters] Map int32
Unused. For completeness.
2024-10-07 06:08:35 -06:00
Behdad Esfahbod
0213bea88e [TupleVariation] Option to optimize for loading speed, not size 2024-10-06 18:11:48 -06:00
n8willis
63611d4474
Merge pull request #3627 from n8willis/docs-cleanup
Docs: clean up various code blocks in docstrings, to enable correct syntax highlighting in HTML / RTD output.
2024-09-16 10:40:05 +01:00
Nathan Williis
d05cdcf21f Docs: black 2024-09-11 15:48:09 +01:00
Nathan Williis
7d93689aca Docs: workaround doctest-vs-Sphinx syntax highlighting. 2024-09-11 15:45:46 +01:00
Nathan Williis
21d04842f8 Docs: fix code-example blocks in ttLib. 2024-09-03 17:55:02 +01:00
Cosimo Lupo
afd73dd2b1
NameRecordVisitor: remove unnecessary check for out of bounds nameIDs 2024-08-30 18:20:13 +01:00
Cosimo Lupo
8f01590353
FeatureParamsSize.SubfamilyID is *not* actually a NameID 2024-08-30 18:20:12 +01:00
Cosimo Lupo
821f37329e
NameRecordVisitor: include whole sequence of UI labels for character variants, not just first
Fixes #3616
2024-08-30 18:20:12 +01:00
Behdad Esfahbod
f4669f0538 [avar] Fix assertion
Fixes https://github.com/fonttools/fonttools/issues/3546
2024-05-31 01:36:17 -07:00
خالد حسني (Khaled Hosny)
1c3137ee14
Merge pull request #3528 from fonttools/remove-overlaps-cff
[ttLib.removeOverlaps] Support CFF table
2024-05-30 14:25:59 +03:00
Khaled Hosny
246bede217 [ttLib.removeOverlaps] Force calling new arguments by name 2024-05-25 19:08:18 +03:00
Just van Rossum
1c2a10f700 Rebuild tables lists 2024-05-25 17:50:29 +02:00
Khaled Hosny
525ab7733a [ttLib.removeOverlaps] Add removeUnusedSubroutines, default to True 2024-05-25 18:41:36 +03:00
Khaled Hosny
945bedd891 [ttLib.removeOverlaps] Do nothing if no glyphs were modified 2024-05-25 18:36:07 +03:00
Khaled Hosny
44b15b41f6 [ttLib.removeOverlaps] Remove unused subroutines 2024-05-25 18:32:01 +03:00
Khaled Hosny
ce8fcfcc4f [ttLib.removeOverlaps] Add all options to CLI 2024-05-25 18:29:10 +03:00
Khaled Hosny
9268e1cdee [ttLib.removeOverlaps] Use argparse 2024-05-25 18:25:03 +03:00
Khaled Hosny
2da78ba158 [ttLib.removeOverlaps] Handle removeHinting for CFF table 2024-05-25 18:16:05 +03:00
Khaled Hosny
2f9033b22d [ttLib.removeOverlaps] Support CFF table 2024-05-25 18:11:30 +03:00
Behdad Esfahbod
db60a248dc
Merge pull request #3395 from fonttools/varc-table
[VARC] Variable Composites table
2024-05-24 08:09:51 -07:00
Behdad Esfahbod
90fed08964 [ttLib.__main__] Fix decompiling all tables 2024-05-23 13:02:43 -06:00
Behdad Esfahbod
753197e017 [varc] Use multiVarStore instead of GDEF varStore
That's what we agreed upon.
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
973072b259 [Condition] Implement ConditionValue
Shift other Condition format numbers.

Implements
https://github.com/adobe-type-tools/opentype-spec-drafts/blob/main/condvalue_spec.md
2024-05-22 18:46:07 -06:00
Just van Rossum
77add05f7f Don't emit addVarComponent() if the component references the parent glyph (special case) 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
973dc5c9a7 [varc] Use Condition instead of ConditionSet
With more Condition formats.

df7dcc4618
https://github.com/harfbuzz/boring-expansion-spec/issues/147
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
d53c08a497 [varc] Conditionals tested! 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
74f870f4ef [varc] Add ConditionSets 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
c155632e8f [varc] Skip reserved records 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
88828e0082 [CFF2IndexOf] Fix data_base
From the spec:
"Offsets in the offset array are relative to the byte
that precedes the object data."
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
a1641d91b2 Newer black 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
3bada5de80 Fix otConverters lazy reader 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
1acc80eba5 [VARC] Deepcopy the component
Since we modify comp.transform.
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
40584ad489 [VARC] Adjust XML output based on review feedback 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
7d6df04d44 [VARC] Minor, match spec better
No functional change.
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
5b2df6b90b [VARC] Compute flags from XML transform components 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
037bbe1030 [VARC] Load axisValues as float
https://github.com/fonttools/fonttools/pull/3395#issuecomment-1897696665
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
5ad4045cec [VarComponent] Nicer XML output
https://github.com/fonttools/fonttools/pull/3395#issuecomment-1895944021
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
e3ba7a7e0b [lazyTools] Simplify based on review feedback 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
87ddb244ea [otBase] Add comment based on review feedback 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
d6482c9b32 [VARC] Rename VarInt32 to uint32var 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
b1142b60cb [VARC] Adjust to latest flags change 2024-05-22 18:46:07 -06:00
Behdad Esfahbod
297e0bd257 [VARC] Use var-int encoding for AxisIndicesIndex
Slightly larger fonts, but more consistency, and freed
a flag bit.
2024-05-22 18:46:07 -06:00
Behdad Esfahbod
6a09096800 [VARC] Use variable-length encoding for VarIdx'es 2024-05-22 18:46:07 -06:00