justvanrossum
26b986e7c9
removed unused import
2019-03-03 13:03:58 +01:00
justvanrossum
7c6239ac84
Changed map(operator...) into explicit for loop
2019-03-03 13:02:27 +01:00
Sascha Brawer
2011ccf6ec
[morx] Clean up compilation of AAT action tables; add more tests
2018-09-24 20:15:54 +02:00
Sascha Brawer
4a1871ff62
[morx] Support AAT action type to insert glyphs
2018-09-24 18:14:01 +02:00
Behdad Esfahbod
05f95f0f58
[otBase] Try ExtensionLookup if other offset-overflow methods fail
...
If offset overflow happens other than between Lookup and SubTable, or
within SubTable, then we don't know how to fix it currently. Now we
try to put that lookup in an Extension lookup anyway, since that will
isolate it and sharing with other lookups won't happen, hopefully
avoiding the overflow.
This is really a bandaid... What we want is the 99proof branch to
be finished and replace our current packing algorithm.
Fixes https://github.com/fonttools/fonttools/issues/1296
2018-07-25 11:06:44 -07:00
Cosimo Lupo
6e8e431dee
otTables: try to fix MarkBasePos subtable overflows
...
Fixes https://github.com/googlei18n/fontmake/issues/450
2018-07-19 17:52:00 +01:00
Cosimo Lupo
2798bf6d1f
otTables: print subtable type when can't split in fixSubTableOverFlows
2018-07-19 17:50:43 +01:00
Cosimo Lupo
dde854d285
Allow decompiling bad ClassDef tables with invalid format
...
Fixes https://github.com/fonttools/fonttools/issues/1235
2018-04-13 12:58:29 +02:00
Cosimo Lupo
6b6c34ab1a
otTables: fix IndexError while pruning of HVAR pre-write
2018-04-03 10:28:27 +01:00
Behdad Esfahbod
54fd71f73c
[varLib/subset] Fix subsetting of GPOS variation data
...
Was not picking up ValueRecord Device objects. Ouch!
2018-02-27 18:52:07 -08:00
Behdad Esfahbod
38a0ffb815
Accept old version of HVAR XML
...
21cbab8ce9 (commitcomment-27649836)
2018-02-20 17:42:49 -08:00
Behdad Esfahbod
ef5c9cb2ab
Fix pruning of HVAR pre-write
2018-02-18 22:59:43 -08:00
Behdad Esfahbod
21cbab8ce9
Fix read/write of VarIdxMap to use glyph names
...
Was relying on glyph IDs. Ouch.
2018-02-18 22:33:32 -08:00
Behdad Esfahbod
1aafae816d
Allow decompiling fonts with bad Coverage format number
2017-12-14 19:03:54 -08:00
Sascha Brawer
d54f14e0a2
[morx] Cosmetic renaming of ligAction to action
...
Beyond composing ligatures, AAT finite-state transducers can also
execute insertion actions without rewriting existing glyphs. The
corresponding actions have almost the same structure as ligature
actions, so we can share a lot of the plumbing within fonttools.
This renaming is in preparation of a larger change to support `morx`
ables with insertions.
2017-10-31 16:25:41 +01:00
Sascha Brawer
5f03a64a57
[morx] Implement InsertionMorphAction
2017-10-31 14:34:12 +01:00
Sascha Brawer
86454e79de
[morx] Compile ligature actions subtable for AAT ligatures
...
Tests fail because other subtables still need to be implemented.
2017-10-25 15:35:56 +02:00
Sascha Brawer
d373808341
[AAT] Decode the morx
ligature actions table
2017-10-25 15:35:56 +02:00
Sascha Brawer
a7ddb0b609
[AAT] Decode morx
tables with ligature substitutions
...
Only handling those parts that are shared with other substitution types.
The actualy ligature actions are not implemented yet.
2017-10-25 15:35:56 +02:00
Sascha Brawer
ee1662e57e
[AAT] Support morx
tables with contextual substitution
2017-09-05 23:01:21 +02:00
Sascha Brawer
31b02d0bed
[AAT] Support morx
tables with Rearrangement subtables
2017-09-04 21:26:53 +02:00
Sascha Brawer
90f257cc60
[AAT] Support mort
and morx
tables with non-contextual substitutions
...
Other metamorphosis types are not yet supported and will raise an error
upon decompilation. The TTX tool catches the error and continues to emit
a hexdump of the table contents, just as before this change.
2017-08-30 14:46:34 +02:00
Sascha Brawer
f56b71937d
Add missing parts from morx branch
...
After this change, the `morx` table in Zapfino.ttf can be ttx'ed again.
2017-08-14 21:34:15 +02:00
Behdad Esfahbod
e5a9fd7faa
[otTables] When splitting PairPos subtable, don't set class=0
...
Doesn't matter when compiling to binary, but makes Python objects cleaner.
2017-04-06 15:34:00 +02:00
Cosimo Lupo
23511fd302
[varLib.merger] set ClassDef{1,2}.Format using same logic as otTables.ClassDef.preWrite
2017-03-14 16:14:08 +00:00
Cosimo Lupo
7562115fc4
move calculation of NumShorts from otTables to varLib.builder
2017-03-01 17:27:41 +00:00
Sascha Brawer
706858646a
Preserve ordering of glyph alternates when round-tripping through TTX
...
Also fixes a bug where glyph alternates in MTI feature files were
wrongly sorted by glyph name. After this change, the output is using
the same ordering as in the input MTI feature file.
Fixes https://github.com/fonttools/fonttools/issues/833 .
2017-02-11 17:08:56 +01:00
Behdad Esfahbod
e45297bf4b
Populate defaults even for tables that have postRead
...
Implement custom populateDefaults for them.
2017-02-03 14:33:57 -08:00
Behdad Esfahbod
b887860b65
Fix compiling of MultipleSubstFormat1 with zero out glyphs
...
str.split('') returns [''], whereas we expect [].
Fix that.
2017-02-02 15:49:09 -08:00
Behdad Esfahbod
3e5335d335
When promoting a lookup to Extension type, set LookupType
...
Fixes https://github.com/fonttools/fonttools/issues/798
2017-01-09 19:52:32 -08:00
Behdad Esfahbod
aeafda539b
Oops!
2017-01-09 00:38:46 -08:00
Behdad Esfahbod
e4d88b5a38
Extra protection
...
Fixes https://github.com/fonttools/fonttools/issues/797
Although for the XML->binary case, that bug was already fixed
on master because of the XML populate-default changes.
This adds extra protection!
2017-01-08 23:47:29 -08:00
Behdad Esfahbod
2d3610bb6b
Ignore class=0 when reading & writing ClassDef objects
...
class=0 items might be added as an optimization. They have no semantic value.
Ignore them.
Fixes the last of mtiLib tests.
2016-12-26 17:26:14 -05:00
Behdad Esfahbod
904b1c5942
Support splitting PairPosFormat1 tables
...
Fixes https://github.com/googlei18n/fontmake/issues/143
2016-11-01 18:15:21 -07:00
Behdad Esfahbod
fb22f64ab1
[varLib] Add TODO item
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
caa353d5dd
[varStore] Generate variation for Anchors and store in GDEF
...
Finally! Phew...
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
687c2c1812
[varLib] Build indirect advance-width in HVAR
...
Fixes VarIdxMap implementation as well.
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
32bd6bcc31
[varLib] Add optimizeVarData()
...
Though not really effective right now since we don't split into
multiple VarData sets.
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
47a7dde070
[varLib] Make VarData.NumShorts automatic
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
35a401f04d
[varLib] Add support for VarIdxMap, aka. DeltaSetIndexMap.
...
Update HVAR / VVAR to latest draft.
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
e9fb97d858
Fix overflow-fixing of Extension subtables
...
Fixes https://github.com/behdad/fonttools/issues/574
This was broken by 319643ad. Ouch!
Was quite a debugging session to pin it down.
2016-07-12 23:55:47 -07:00
Behdad Esfahbod
c794ff85d6
Fix typo in comments
2016-06-06 22:06:33 -07:00
justvanrossum
123d7c10b6
Found a font that has an empty SingleSubst mapping. While that's silly, it's not necessarily illegal. FontTools, however, would crash with an AssertionError upon compilation. Fixed.
2016-05-28 22:20:31 +09:00
Behdad Esfahbod
c4fe9c7c57
Before splitting subtables when overflow happens, try disabling table sharing
...
More bandaid for https://github.com/behdad/fonttools/issues/537
2016-04-13 16:34:14 -07:00
Behdad Esfahbod
4268e6345d
Fix splitPairPos for TTFont loaded from XML
...
When loading from XML count variables are missing...
Fixes https://github.com/behdad/fonttools/issues/537#issuecomment-207849194
2016-04-13 16:17:05 -07:00
Behdad Esfahbod
c6facc99df
When splitting a large class-kerning table, mark the old subtable as DontShare
...
Fixes https://github.com/behdad/fonttools/issues/537#issuecomment-196047070
2016-04-09 13:06:16 -07:00
justvanrossum
ad386ee477
Keep Format attribute for OT subtables. This value may be ignored by the compiler but is useful for debugging. Part of fixing #92 .
2016-03-21 12:12:05 +01:00
Behdad Esfahbod
c1080d9796
Implement splitting PairPosFormat2 in case of overflow
...
Part of fixing https://github.com/behdad/fonttools/issues/537
2016-03-12 18:17:37 -08:00
Behdad Esfahbod
d87d6aa39e
[ot] Make sure GSUB/GPOS top arrays don't share bytes
...
Fixes https://github.com/behdad/fonttools/issues/518
Fixes https://github.com/behdad/fonttools/issues/372
2016-02-10 18:00:48 +07:00
Cosimo Lupo
af91f9e791
[otTables] replace warnings with logger
2016-01-27 19:02:48 +00:00