149 Commits

Author SHA1 Message Date
Behdad Esfahbod
50d6c7298a Minor 2014-03-28 14:32:24 -07:00
Behdad Esfahbod
d0a31f5a43 Make tag parameter to table constructor optional
If not provided, extract from class name.
2014-03-28 14:04:01 -07:00
Behdad Esfahbod
1ae29591ef from __future__ import absolute_import
Such that our Python 2 is closer to Python 3.

Part of https://github.com/behdad/fonttools/issues/77
2014-01-14 15:07:50 +08:00
Behdad Esfahbod
9c5e2ce1b6 Add a get() method to TTFont ala dict.get() 2013-12-19 11:38:56 -05:00
Behdad Esfahbod
283fb26820 By default, don't load fonts lazily
Lazy loading has implications on how people use objects.
So, by default, don't load lazily.  This only affects
GSUB/GDEF/GPOS/etc and is closer to what fonttools used
to do traditionally.

Turn lazy loading on in subset and inspect.
2013-12-16 00:52:29 -05:00
Behdad Esfahbod
e5bee3716e Allow converting 'glyphXXX' to glyphID
There was an inconsistency: when allowVID was False, we were allowing
gid->glyphXXX, but not the reverse.  This was allowing some fonts to
be loaded, but then not to be written back.  Fix that.
2013-12-04 22:46:29 -05:00
Behdad Esfahbod
ebefbbaa58 Minor 2013-12-04 22:07:18 -05:00
Behdad Esfahbod
dc87372c88 Use True/False instead of 1/0 2013-12-04 21:28:50 -05:00
Behdad Esfahbod
9e6ef94b55 Use "is None" instead of "== None"
The latter hits the __eq__ method and can fail because we now
do not allow comparing objects of different types.

For example, was failing subsetting Andika-R.ttf.
2013-12-04 16:35:10 -05:00
Behdad Esfahbod
153ec40209 Fix a few pychecker warnings
Fixes https://github.com/behdad/fonttools/issues/58
2013-12-04 01:15:46 -05:00
Behdad Esfahbod
e388db566b py23 Use new-style classes
Such that we get the same semantics in both Python 2 and 3.
2013-11-28 18:53:30 -05:00
Behdad Esfahbod
5cf4008336 py23 tostr()/tobytes() and using them
ttf->xml seems to be mostly working now.
2013-11-28 17:32:43 -05:00
Behdad Esfahbod
960280bbd6 py23 Use more Tag() 2013-11-28 17:32:42 -05:00
Behdad Esfahbod
319c5fd10e py23 introduce byteord() and use it 2013-11-28 17:32:42 -05:00
Behdad Esfahbod
d2f5d2f8b4 py23 use Tag in ttLib/__init__ 2013-11-28 17:32:42 -05:00
Behdad Esfahbod
32c10eecff py23 from __future__ import division and adjust divisions 2013-11-28 17:32:42 -05:00
Behdad Esfahbod
30e691edd0 py23 from __future__ import print_function 2013-11-27 17:27:45 -05:00
Behdad Esfahbod
b7a2d797a4 py23 Use bytechr() instead of chr() 2013-11-27 15:25:00 -05:00
Behdad Esfahbod
bb0beb7385 2to3 Use py23 to close some of the bytes/str/unicode gaps 2013-11-27 15:25:00 -05:00
Behdad Esfahbod
c2297cd41d 2to3 --fix=dict with manual cleanup 2013-11-27 14:01:45 -05:00
Behdad Esfahbod
14fb031125 Remove most uses of module string 2013-11-27 14:01:44 -05:00
Behdad Esfahbod
223273f792 2to3 --fix=except 2013-11-27 14:01:37 -05:00
Behdad Esfahbod
b92c08059d 2to3 --fix=imports with manual fixups 2013-11-27 05:05:46 -05:00
Behdad Esfahbod
3ec6a25823 2to3 --fix=print with manual fixup 2013-11-27 04:57:33 -05:00
Behdad Esfahbod
ac1b435946 2to3 --fix=idioms 2013-11-27 04:15:34 -05:00
Behdad Esfahbod
3a9fd30180 2to3 equivalent to --fix=tuple_params
I hope I got this all right...
2013-11-27 03:30:21 -05:00
Behdad Esfahbod
dc7e6f3e55 2to3 --fix=repr 2013-11-27 02:44:56 -05:00
Behdad Esfahbod
cd5aad92f2 2to3 --fix=raise 2013-11-27 02:42:28 -05:00
Behdad Esfahbod
180ace6a5f 2to3 --fix=ne 2013-11-27 02:40:30 -05:00
Behdad Esfahbod
2b06aaa2a6 2to3 --fix=import 2013-11-27 02:34:11 -05:00
Behdad Esfahbod
bc5e1cb195 2to3 --fix=has_key 2013-11-27 02:33:03 -05:00
Behdad Esfahbod
7ef23a85ae Add font.lazy 2013-11-24 19:03:18 -05:00
Behdad Esfahbod
3ebfea491e Move fontTools.ttLib.importXML to fontTools.misc.xmlReader
Better matches xmlWriter.
2013-11-24 19:00:59 -05:00
Behdad Esfahbod
38fdae6342 Use True/False instead of 1/0 2013-11-24 18:49:35 -05:00
Roozbeh Pournader
d7921e33d9 Improved support for minimal fonts (with no visible glyphs). 2013-10-08 21:29:22 -07: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
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
d7efd5692c Make parsing XML quiet 2013-09-04 14:51:16 +01:00
Dave Crossland
85af40e7d8 Adding quiet mode to xmlImport 2013-09-04 13:30:21 +01:00
Behdad Esfahbod
c4af3964fb Revert "Make GlyphOrder object iterable"
This reverts commit e4a670cc7da93d3a12ba23d8cfefdeb0ec7be01f.

As Read Roberts wrote to me:

"you changed the definition of the GlyphOrder class to take a ttFont as
the argument for the __init__ function, rather than just the
tag, as before, I think so that the glyph order is defined when the
table is instantiated, rather than only when to/fromXML() is called

The problem with this is that the ttx.py compile function passes in a tag,
so compiling a font from an ttx file fails here, and in
xmlImport.startElementHandler(). I discovered this because a number of my
scripts use the same logic. What is the reason for this change? I have no
problem with changing the several FDK scripts that build a new TTF font
from scratch, to pass in the ttFont rather than a tag, but wanted to be
sure that this was necessary. The main issues are that when reading in an
entire TTX file, the table has to be instantiated before the data can be
provided, and the GylphOrder initialization is then different than  for
all the other tables"""

As such revert.  This means that GlyphOrder is again non-iterable.  Will
have to fix in some other way later.
2013-08-28 17:12:12 -04:00
Behdad Esfahbod
d8b32bf6e2 Minor import cleanup 2013-08-19 15:27:14 -04:00
Behdad Esfahbod
e4a670cc7d Make GlyphOrder object iterable 2013-08-19 14:17:11 -04:00
Behdad Esfahbod
400e9539fd Improve import handling
For example trying to run fontTools on Jython or PyPy fails
because they don't have a numpy module.  However, the error
is caught by the getTableModule() and instead DefaultTable
used for tables that use numpy in their implementation.  Fix
that.
2013-08-19 14:17:10 -04:00
Behdad Esfahbod
b0dc6dfc8b Add support for saving WOFF file format 2013-08-19 14:17:02 -04:00
Behdad Esfahbod
58d7416124 Add support for loading WOFF file format 2013-08-19 14:16:49 -04:00
Matt Fontaine
c33b0a22ef Add support for standard EBLC/EBDT embedded bitmaps 2013-08-19 14:15:46 -04:00
jvr
91bca42442 merging fixes & changes from delft-sprint-2012
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@611 4cde692c-a291-49d1-8350-778aa11640f8
2012-10-18 12:49:22 +00:00
pabs3
1344bc9b62 Fix typos: 'neccesary' should be 'necessary'.
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@581 4cde692c-a291-49d1-8350-778aa11640f8
2010-01-09 09:12:11 +00:00
pabs3
7e91e776c9 Apply remainder of #1675210: add support for TrueType Collection (TTC) files.
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@564 4cde692c-a291-49d1-8350-778aa11640f8
2009-02-22 08:55:00 +00:00
jvr
9be387c94f Use sys.byteorder, getting rid of ttLib.endian
git-svn-id: svn://svn.code.sf.net/p/fonttools/code/trunk@527 4cde692c-a291-49d1-8350-778aa11640f8
2008-03-01 11:43:01 +00:00