11544 Commits

Author SHA1 Message Date
jamesgk
97ce534d7b Move geometry.py to __init__.py 2015-12-01 12:30:31 -08:00
jamesgk
ebf1573564 Remove __init__.py (will be replace by geometry.py) 2015-12-01 11:04:48 -08:00
Cosimo Lupo
9f0aa03aec Merge pull request #402 from khaledhosny/subset-colr
[subset] Support subsetting MS color tables
2015-12-01 08:15:53 +00:00
Cosimo Lupo
f06dd27c25 Merge pull request #417 from khaledhosny/fix-setup.py
Fix setup.py to install fontTools.subset
2015-12-01 08:02:47 +00:00
Khaled Hosny
301d2db812 [subset] Support subsetting MS color tables
Add support for subsetting COLR table.

The CPAL table does not need subsetting, but unused palettes should be
pruned, this is not implemented however as it depends on COLR table,
which in turn will not be updated after pruning CPAL.
2015-12-01 11:59:52 +04:00
Khaled Hosny
b39077b64e Fix setup.py to install fontTools.subset
Broken since 29d7edf76f9ca888d120f2018e08e2b337ba7cf8.
2015-12-01 11:58:20 +04:00
Sascha Brawer
152dff4361 [feaLib] Implement GSUB chain substitution rules 2015-11-30 15:02:09 +01:00
Behdad Esfahbod
fdd84fad88 Merge pull request #12 from googlei18n/error-em
Specify tolerance in em through `max_err_em`
2015-11-24 15:38:22 -06:00
Behdad Esfahbod
a9d364ddcb Add URL to spec 2015-11-24 15:01:11 -06:00
Behdad Esfahbod
24f088110e Rename from FontWorker to FontDame
Spec is also available now, at:
https://github.com/Monotype/OpenType_Table_Source/
https://rawgit.com/Monotype/OpenType_Table_Source/master/otl_source.html
2015-11-24 15:00:15 -06:00
jamesgk
bf6b2d9f7e Specify tolerance in em through max_err_em
This way, the `max_err` parameter is consistent with the other
functions (being in font units).
2015-11-24 12:52:03 -08:00
Cosimo Lupo
196254ae1e Merge pull request #414 from anthrotype/py23-import-fix
[py23] fix ImportError when trying to import names when already defined
2015-11-23 12:07:41 +00:00
Cosimo Lupo
2eda1785f6 [py23] fix ImportError when trying to import unichr, basestring or unicode when already defined
When one does `from fontTools.misc.py23 import *`, everything seems to work fine.

However, linters will complain when one uses the asterisk to import all names from a module, since they can't detect when names are left undefined -- asterisks are greedy and will eat all names.

If one avoids the asterik and attempts to import explicitly, like in `from fontTools.misc.py23 import basestring`, the problem then is that, if `py23` does not re-define the name -- e.g. under python2 `basestring` or `unicode` are built-ins -- then the import statement raises `ImportError`.

The same happens for the `unichr` function on a "wide" Python 2 build (in which `sys.maxunicode == 0x10FFFF`).

Now, to work around this, we need to re-assign those built-ins to their very same names. This may look silly, but at least it works.
2015-11-23 12:02:12 +00:00
James Godfrey-Kittle
f82e320395 Merge pull request #5 from googlei18n/error-em
Specify max error in em instead of font units
2015-11-20 14:40:07 -08:00
jamesgk
4f107a9119 Merge branch 'master' into error-em 2015-11-20 14:39:10 -08:00
Behdad Esfahbod
a5e23c01f6 Merge pull request #4 from googlei18n/stats-arg
Take in dictionary of conversion statistics
2015-11-20 14:19:47 -08:00
jamesgk
85821f081d Update readme with max_error param changes 2015-11-20 12:08:28 -08:00
jamesgk
79ea6b4973 Swap order of "max_err" and "max_n" parameters
I like this new order better, since max_err seems to be the more
important parameter, and it corresponds more closely with the actual
font object params (which can be lists) than max_n (which is always
a single value).
2015-11-20 12:06:18 -08:00
jamesgk
e94071a2d8 Specify max error in em instead of font units
This should be more compatible between fonts with different UPM. In
fact, it should work within a single call with such fonts.

The default max error is now 0.0025 em, which is about 5 units for a
2048 UPM font.
2015-11-20 12:04:48 -08:00
jamesgk
5ef46a5bb3 Update readme with API changes 2015-11-19 17:17:56 -08:00
jamesgk
042a392d35 Take in dictionary of conversion stats
This allows stats to be accumulated between function calls.
2015-11-19 17:11:06 -08:00
jamesgk
8bbdb47cf5 Rename "robofab" module to "rf"
Apparently naming this robofab conflicts with the global robofab
module.
2015-11-19 16:59:49 -08:00
jamesgk
68d5213dd1 Update comments -- conversion is always compatible 2015-11-19 16:45:05 -08:00
jamesgk
45364ed045 Move RoboFab-specific code to a "robofab" module 2015-11-19 16:40:52 -08:00
Adrien Tétar
744423d267 Merge pull request #8 from moyogo/py23
Python 2/3: replace str by basestring
2015-11-18 15:31:34 +01:00
Denis Jacquerye
d05df7eb7e Python 2/3: replace str by basestring 2015-11-18 13:22:14 +00:00
Behdad Esfahbod
505c1a5ea7 Fixup previous change
ecbe8f2c37 (commitcomment-14464749)
2015-11-18 00:08:49 -08:00
Behdad Esfahbod
ecbe8f2c37 Fix decompile of Neirizi 2015-11-17 23:24:03 -08:00
Behdad Esfahbod
5d41ad985e Merge pull request #411 from miguelsousa/subset_unittest
[subset] unittest & .notdef advance width fix
2015-11-16 19:00:18 -08:00
James Godfrey-Kittle
815c435fc9 Merge pull request #3 from anthrotype/round-int
don't truncate floats but round them before casting them to ints
2015-11-16 11:11:55 -08:00
Cosimo Lupo
e8db3a18bb don't truncate floats but round them before casting them to ints 2015-11-14 18:04:22 +00:00
Miguel Sousa
6db7d30ed9 [subset] Preserve the .notdef glyph width when removing its outlines 2015-11-13 17:43:22 -08:00
Miguel Sousa
270b155d45 [subset] First unit tests and test data 2015-11-13 17:40:17 -08:00
Miguel Sousa
51bd7e00b5 white space 2015-11-13 17:36:13 -08:00
Miguel Sousa
29d7edf76f [subset] mv subset.py subset/__init__.py 2015-11-13 17:36:02 -08:00
Cosimo Lupo
6bd52a6f6d Merge pull request #409 from anthrotype/sfnt-table-order
[sfnt] make SFNTReader.tables an OrderedDict sorted by table offset
2015-11-13 17:44:20 +00:00
Cosimo Lupo
8019069f7c [sfnt] make SFNTReader.tables an OrderedDict sorted by table offset
Fixes https://github.com/behdad/fonttools/issues/408
2015-11-13 17:38:50 +00:00
Adrien Tétar
f733002fea Merge pull request #7 from moyogo/badges
README: link badges with Travis-CI and AppVeyor project pages
2015-11-13 16:06:08 +01:00
Denis Jacquerye
7a4f0328e7 README: link badges with Travis-CI and AppVeyor project pages 2015-11-13 14:19:51 +00:00
jamesgk
ebcd99b1df Rearrange some code
Hopefully this should make the code supporting the public API more
clear.
2015-11-12 16:36:23 -08:00
jamesgk
3855de8887 Move non-RoboFab code into a separate module 2015-11-12 16:22:15 -08:00
jamesgk
3e7c9a39d3 Move cu2qu into a package 2015-11-12 16:18:58 -08:00
Cosimo Lupo
7f5d5454fc Merge pull request #406 from anthrotype/xattr-keyerror
[macCreatorType] fix KeyError raised by old version of xattr module
2015-11-11 00:06:54 +00:00
Cosimo Lupo
f10cb1f17d [macCreatorType] fix KeyError raised by old version of xattr module
in version 0.6.4 (installed on OS X 10.10 python lib/extras) it raises
KeyError, whereas in the latest version available fom PyPI (v0.7.8) it
raises IOError.

Fixes issue in https://github.com/googlei18n/nototools/issues/113
2015-11-11 00:01:50 +00:00
Cosimo Lupo
75d4805256 Merge pull request #405 from anthrotype/post-maxint
[_p_o_s_t] remove max indices "reserved for future use"
2015-11-10 00:20:44 +00:00
Cosimo Lupo
49d929681e [_p_o_s_t] remove max indices "reserved for future use"
the third (2015) edition of ISO/IEC 14496-22 "Open Font Format" increased
the limit from 32767 to 65535 (and thus eliminated the reserved numbers).

`array.array` will take care of raising the right `OverflowError` exception
so we don't need any further checking.
2015-11-10 00:11:28 +00:00
Adrien Tétar
91190587b8 Merge pull request #2 from moyogo/appveyor
Add AppVeyor files
2015-11-08 18:03:51 +01:00
Denis Jacquerye
4611f4d6fc README: add Appveyor and Python versions badges 2015-11-08 16:56:50 +00:00
Denis Jacquerye
c7c9d901e8 Add Appveyor files 2015-11-08 16:56:50 +00:00
Adrien Tétar
08a6281a91 Merge pull request #1 from unified-font-object/patch-1
glifLib: open files as binary to avoid line-endings normalization
2015-11-08 15:44:30 +01:00