Behdad Esfahbod
ea017bd66f
Remove USHORT vs uint16 inconsistency
2013-11-23 19:19:48 -05:00
Behdad Esfahbod
5962268b79
Remove unused "LONG" converter
...
LONG was replaced by Fixed long time ago.
2013-11-23 19:18:53 -05:00
Behdad Esfahbod
0de65295f6
Remove script to build otData.py
...
The was was originally generated, but is static now and this
allows cleaning it up and modifying it.
2013-11-23 19:12:11 -05:00
Behdad Esfahbod
3879cf9439
Use slots for OTTableReader
...
Slight performance gain even.
2013-11-22 19:34:57 -05:00
Behdad Esfahbod
6e556aafc3
Make ValueRecordFactory() immutable
...
Gives another 3% speedup.
2013-11-22 19:34:46 -05:00
Behdad Esfahbod
41caf2dea1
Remove tableStack in favor of countVars
...
We only needed tableStack to look back for counts. So, just store
counts. Gives ~8 speedup for large fonts I tested. We are not
faster than not loading fonts lazily without this patch, so the
laziness patch combined with this doesn't have a net negative
performance impact anymore.
2013-11-22 19:13:14 -05:00
Behdad Esfahbod
0585b64f70
Minor
2013-11-22 16:46:03 -05:00
Behdad Esfahbod
d01c44a59b
When lazy-loading tables, copy ValueFormat
...
Otherwise it may be overwritten before we use it.
2013-11-22 15:21:41 -05:00
Behdad Esfahbod
fc10b20c25
Minor
2013-11-20 21:50:16 -05:00
Behdad Esfahbod
f50d0dff86
Load all OpenType sub-structures lazily
...
Huge win for subsetter and anyone else who doesn't need the entire
tables. Subsetting a huge font (eg. NotoSans-Regular.ttf) to a
small set (say, main Cyrillic characters) is something like six
times faster now. Bulk of time was being spent in blowing up the
GPOS kerning pairs and attach points. Now we don't load those if
they won't be in the final subset.
Slight slowdown for usecases that need the entire table.
2013-11-20 19:07:08 -05:00
Behdad Esfahbod
5988cc32cb
Make BaseTable a new-style object
2013-11-19 17:40:46 -05:00
Olivier Berten
aa37c0aa7d
Support for OS/2 table version 5 as proposed by Microsoft
...
https://github.com/fontforge/fontforge/issues/956
2013-11-19 00:44:38 +01:00
Behdad Esfahbod
fc4f438496
Fix parsing of hinting instructions that end in a PUSHB
...
Sounds useless, but MReifutaiM-Regular.ttf seems to have that, and the
parsing back from XML was failing because we expected a token whereas
after dropping whitespace there wasn't any left.
2013-11-18 16:06:01 -05:00
Behdad Esfahbod
17700bf926
Handle and warn about out-of-order Coverage table entries
...
Apparently the SIL Gentium fonts have wrong sorting in Coverage
tables. That's broken by the spec, but shapers still work with
such fonts. So, we warn when reading, and when writing, such
out-of-order coverage tables.
2013-11-18 16:05:00 -05:00
Behdad Esfahbod
6e70667659
Support loading broken Coverage tables
...
Hit by Google Fonts's font "Cabin" for example and a handful
of others.
2013-11-15 17:00:38 -05:00
Behdad Esfahbod
67fef70631
Support decode/encoding of unknown glyf hinting instructions
...
New instructions can be defined in the prep program. We don't
check that the "unknown" instruction was actually defined. Just
pass it through.
Fixes ttx with Skia.ttf on the Mac OS X.
Fixes https://github.com/behdad/fonttools/issues/21
2013-11-14 20:25:21 -05:00
Behdad Esfahbod
4ff7712131
Restructure code
...
In anticipation of upcoming change.
2013-11-14 20:16:41 -05:00
Behdad Esfahbod
4fab60ca5b
Remove unused instruction name propagation
...
No functional change whatsoever.
2013-11-14 20:14:10 -05:00
Behdad Esfahbod
978b1ea877
Indent
2013-11-14 19:18:11 -05:00
Behdad Esfahbod
246301acc9
Fixup hhea recalc after 9222b8ef93fd6b41f9c4dcf152593cd0c80f0ba4
2013-11-14 18:55:35 -05:00
Roozbeh Pournader
c360f04754
Separate out the logic of computing advanceWidthMax from minLeftSideBearing, minRightSideBearing, and xMaxExtent for minimal fonts.
2013-11-14 18:53:20 -05:00
Roozbeh Pournader
dec666aa05
Only modify the loca table is there is such a table.
2013-11-14 18:52:15 -05:00
Behdad Esfahbod
7bdf6d39fc
Minor
2013-11-14 17:27:15 -05:00
Behdad Esfahbod
9222b8ef93
Consider composite glyphs when recalcing 'hhea' values
...
Fixes https://github.com/behdad/fonttools/issues/20
2013-11-14 17:22:47 -05:00
Behdad Esfahbod
335f182a58
Consider advance width of all glyphs when recalcing 'hhea'
...
Part of https://github.com/behdad/fonttools/issues/20
2013-11-14 17:18:56 -05:00
Behdad Esfahbod
cd4fac4f4a
Avoid overflow when compiling glyf table
...
https://github.com/behdad/fonttools/pull/25
2013-11-14 17:07:35 -05:00
Behdad Esfahbod
c55d592661
Remove unreachable code
2013-11-14 17:07:16 -05:00
Behdad Esfahbod
94118dcea4
Fix cmap subtable sort order
...
https://github.com/behdad/fonttools/issues/22
2013-10-28 12:16:41 +01:00
Behdad Esfahbod
0ba7aa7ab5
Make __cmp__() functions stable
2013-10-28 12:07:15 +01:00
Behdad Esfahbod
d95db25720
Indent
2013-10-26 22:03:46 +02:00
Denis Jacquerye
1e0ad3a9a8
remove non utf-8 character in unmaintainted code
2013-10-13 10:17:49 +01:00
Roozbeh Pournader
51a17826be
Add support for cmap format 13.
2013-10-09 15:55:07 -07:00
Denis Jacquerye
cff3740f14
* wrong indentation after else
2013-10-09 12:13:40 +02:00
Roozbeh Pournader
d7921e33d9
Improved support for minimal fonts (with no visible glyphs).
2013-10-08 21:29:22 -07:00
Behdad Esfahbod
1e4c89f83a
Update SVG table implementation
...
New drop from Read Roberts.
2013-10-07 17:23:35 -04:00
Behdad Esfahbod
805caae0d5
Merge pull request #5 from davelab6/master
...
New -q for Quiet mode
2013-10-01 15:36:55 -07:00
Behdad Esfahbod
2e998ea692
Fix GlyphCoordinates slicing
...
Based on patch from Roozbeh.
2013-09-29 14:02:27 -04:00
Behdad Esfahbod
043108cbdb
[subset] Fix glyf component closure
...
https://github.com/behdad/fonttools/pull/11
2013-09-27 16:29:50 -04:00
Behdad Esfahbod
bb56ddb971
Fix composite glyph coordinate routines
...
Ouch, was modifying the component's own coordinates before.
2013-09-20 16:36:10 -04:00
Behdad Esfahbod
70fee1648a
Fix glyph removeHinting re padding
2013-09-20 16:36:05 -04:00
Behdad Esfahbod
626107c833
Move some methods from subset.py to 'glyf' table implementation
2013-09-20 16:36:00 -04:00
Behdad Esfahbod
9d7dc22299
Add copyright notices
2013-09-19 20:03:02 -04:00
Behdad Esfahbod
8413c108d2
Move sstruct under fontTools.misc
...
Our footprint in the Python module namespace is all under
fontTools now. User code importing sstruct should be updated
to say "from fontTools.misc import sstruct".
2013-09-17 16:59:39 -04:00
Behdad Esfahbod
f65033e277
Move xmlWriter into fontTools.misc
...
Trying to cleanup our footprint in the Python namespace.
2013-09-17 16:41:32 -04:00
Dave Crossland
a9b7e14f9b
Merge http://github.com/behdad/fonttools
2013-09-04 18:53:41 +01:00
Behdad Esfahbod
9316a90e32
Fixup from numpy removal
2013-09-04 13:50:38 -04:00
Dave Crossland
1e50d94487
Merge http://github.com/behdad/fonttools
2013-09-04 15:51:58 +01:00
Behdad Esfahbod
2058dcfb68
More GlyphCoordinates fixup
...
I'm sure it's correct this time, though I couldn't reproduce the latest
issue Dave was hitting.
2013-09-04 10:49:21 -04:00
Dave Crossland
a2fb9508fb
Merge http://github.com/behdad/fonttools
2013-09-04 15:42:31 +01:00
Behdad Esfahbod
e9ea5a0a10
Really fix GlyphCoordinates this time
...
Argh. I should stop committing without proper time to test first.
https://github.com/behdad/fonttools/issues/4
2013-09-04 10:39:51 -04:00