158 Commits

Author SHA1 Message Date
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
pabs3
3ac875aa1d Fix consistency of space/tab usage.
Reference: http://docs.python.org/reference/lexical_analysis.html#indentation

git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@613 4cde692c-a291-49d1-8350-778aa11640f8
2013-06-12 05:04:24 +00:00
jvr
823f8cd15f Misc patches from rroberts:
fontTools/ttx.py
  # support virtual GIDs, support handling some GSUB offset overflows.

fontTools/ttlib/__init__.py
# 1) make getReverseGlyphMap  a public function; I find a reverse map
to often be useful
# 2) support virtual glyphs, e.g. references to GID's that are not in the font.
# Added the TTFont argument allowVID (default 0) to turn this off and on;
# added the arg requireReal ( default 0) so as to get the obvious
default behaviour when
# allowVID is 0 or 1, but to allow requiring a true GID when allowVID is 1.

fontTools/ttlib/tables/otBase.py
fontTools/ttlib/tables/otConverters.py
fontTools/ttlib/tables/otData.py
fontTools/ttlib/tables/otTables.py
# 1) speed optimization
# - collapse for loops
# - do not decompile extension lookups until a record is requested
from within the lookup.
# 2) handling offset overflows
# 3) support of extension lookups
# 4) Fixed FetauresParam converter class def so as to survive a font
that has this offset non-NULL.
# This fixes a stack dump.
# The data will now just get ignored


git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@511 4cde692c-a291-49d1-8350-778aa11640f8
2006-10-21 14:12:38 +00:00
jvr
52966bb144 minor refactoring
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@340 4cde692c-a291-49d1-8350-778aa11640f8
2002-09-12 16:45:48 +00:00
jvr
7007a08545 whoops, compile was broken due to Fixed 'fix'
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@238 4cde692c-a291-49d1-8350-778aa11640f8
2002-05-16 18:12:11 +00:00
jvr
b776a882ee added Fixed type
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@228 4cde692c-a291-49d1-8350-778aa11640f8
2002-05-13 18:10:05 +00:00
jvr
64b5c80e80 results of morning-after code review, added some doc strings, etc.
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@210 4cde692c-a291-49d1-8350-778aa11640f8
2002-05-11 10:21:36 +00:00
jvr
d4d151390d Completely revamped OT support; this time it works and is complete. XML output is not yet as pretty as can be.
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@208 4cde692c-a291-49d1-8350-778aa11640f8
2002-05-11 00:59:27 +00:00