2860 Commits

Author SHA1 Message Date
Cosimo Lupo
793827e7c6 Appveyor: don't configure environment for C++ compiler as we now use pre-compiled Brotli wheels 2016-08-15 13:10:13 +01:00
Behdad Esfahbod
8701fedcfe More solveCubic() hardening
It really should be quite solid this time. :-)
2016-08-13 16:29:49 -07:00
Behdad Esfahbod
5bea5f4fd6 Remove unused line 2016-08-13 16:25:09 -07:00
Behdad Esfahbod
ca7f8d8808 Harden solveCubic() some more
Fixes https://github.com/behdad/fonttools/issues/617#issuecomment-239146815
2016-08-12 22:43:20 -07:00
Cosimo Lupo
1b2af584ff requirements.txt: use the latest Brotli 0.5.2 2016-08-12 11:14:42 +01:00
Behdad Esfahbod
9b3660df9f pointInsidePen: Disallow endPath()
https://github.com/behdad/fonttools/issues/621#issuecomment-234764830
2016-08-10 17:31:29 -07:00
Behdad Esfahbod
f3ff2f8881 pointInsidePen: add getWinding()
Resolves https://github.com/behdad/fonttools/issues/621#issuecomment-234764830

Although, leaving contours left open is out of protocol behavior
IMO.
2016-08-10 17:30:33 -07:00
Behdad Esfahbod
5cd0a55635 Ignore up to 4 bytes excess in kern subtables
Fixes https://github.com/behdad/fonttools/issues/314

Previously the warning message was wrong (probably a regression)
as it was reporting the the length of all kern data as "excess".
Fixing that, I see 4 bytes excess in Calibri.  Up to 4 is alright,
since many compilers add padding and wrongly add 4 instead of 0
sometimes.
2016-08-08 13:02:34 -07:00
Cosimo Lupo
fae8e1b498 Merge pull request #631 from anthrotype/woff-metadata-snippets
Snippets: add 'merge_woff_metadata.py' and 'dump_woff_metatada.py' scripts
2016-08-07 19:28:21 +01:00
Cosimo Lupo
4d7cd66ebc tox.ini: drop py33 testenv 2016-08-06 19:46:22 +01:00
Cosimo Lupo
9e60c3faff Merge pull request #649 from behdad/no-py33
.travis.yml: drop Python 3.3 support
2016-08-06 19:43:50 +01:00
Cosimo Lupo
b6ab441a1a .travis.yml: drop Python 3.3 support 2016-08-06 19:29:35 +01:00
Cosimo Lupo
189fac4758 setup.py: pep8 whitespace; remove unused imports 2016-08-06 13:37:39 +01:00
Cosimo Lupo
8e3b30a078 Revert "setup.py: version 3.1"
This reverts commit cef46f09cf2ddac7e4cd34ed385a094877a8bc4e.

Let's change the package version string only when we are ready to tag the new release.
2016-08-06 13:30:15 +01:00
Cosimo Lupo
c4df73beb6 Merge pull request #647 from anthrotype/pypi
[Travis] auto deploy to PyPI on tags
2016-08-06 13:27:21 +01:00
Cosimo Lupo
900a250896 .travis.yml: enable automatic PyPI deployment from Travis upon tags 2016-08-06 13:10:52 +01:00
Cosimo Lupo
cef46f09cf setup.py: version 3.1 2016-08-06 11:59:00 +01:00
Cosimo Lupo
6b2ac939dd add setup.cfg specifying 'universal' py2-py3 wheel format 2016-08-06 11:40:53 +01:00
Cosimo Lupo
4dc937ff11 Merge pull request #646 from anthrotype/brotli-0.4
requirements.txt: download Brotli 0.4.0 pre-compiled wheel from Github Releases
2016-08-06 11:38:24 +01:00
Cosimo Lupo
64d055c742 requirements.txt: download Brotli 0.4.0 pre-compiled wheel (or sdist) from Github Releases
this should speed up the Travis and Appveyor builds, as we don't need to compile
Brotli from source, at least on OSX and Windows. Linux will still use the
.tag.gz source distribution.
2016-08-06 11:30:41 +01:00
Behdad Esfahbod
9080151cd5 [varLib] Fix variations for composite glyphs using anchor points 2016-07-29 14:44:02 -07:00
Behdad Esfahbod
fc05fe74ec [varLib] Remove unused code 2016-07-29 14:40:16 -07:00
Behdad Esfahbod
02b415c237 [bezierTools] Speed up a bit 2016-07-29 14:40:10 -07:00
Cosimo Lupo
0458410558 Merge pull request #643 from miguelsousa/more-ptinsidepen-coverage
Tests to increase PointInsidePen's coverage
2016-07-28 09:16:05 +01:00
Miguel Sousa
c181805e7e Tests to increase PointInsidePen's coverage 2016-07-28 00:03:04 -07:00
Sascha Brawer
fede51855a Merge pull request #642 from anthrotype/feaLib-ignore-semicolon
[feaLib] ignore stray semicolons
2016-07-28 00:19:43 +02:00
Cosimo Lupo
53232c02bd [feaLib.parser_test] test for stray semicolons 2016-07-27 09:55:11 +01:00
Cosimo Lupo
e9c3686b18 [feaLib.parser] ignore top-level empty statements made up of a single semicolon
makeotf doesn't complain about them either.

Fixes #641
2016-07-27 09:54:08 +01:00
Cosimo Lupo
efb8642366 Merge pull request #640 from adrientetar/qtpen-quads
qtPen: use native quads impl
2016-07-25 19:17:36 +01:00
Adrien Tétar
1126e6edda qtPen: use native quads impl 2016-07-25 11:14:13 -07:00
Cosimo Lupo
539a5010e5 subset: --recalc-average-width is disabled by default 2016-07-20 09:33:35 +01:00
Behdad Esfahbod
d96e246532 Make solveCubic() more robust
Fixes https://github.com/behdad/fonttools/issues/621#issuecomment-226671968
2016-07-19 22:50:09 -07:00
Miguel Sousa
2240bcbd22 Example that fails latest PointInsidePen (#638) 2016-07-19 22:39:57 -07:00
Cosimo Lupo
d1a27bd671 subset: add --recalc-average-width command-line option (on by default); log message if xAvgCharWidth changed 2016-07-19 22:54:05 +01:00
Cosimo Lupo
9e148a409d Merge pull request #636 from khaledhosny/subset-xAvgCharWidth
[subset] Recalculate OS/2.xAvgCharWidth
2016-07-19 22:35:28 +01:00
Khaled Hosny
efb32d5402 [subset] Recalculate OS/2.xAvgCharWidth 2016-07-18 01:35:18 +02:00
Behdad Esfahbod
10aaac53f2 Fix test 2016-07-16 21:58:41 -07:00
Behdad Esfahbod
81d84e6f85 Fix PointInsidePen
https://github.com/behdad/fonttools/issues/621
2016-07-16 21:47:37 -07:00
Behdad Esfahbod
9c037fc826 [gvar] Add TODO 2016-07-16 21:22:20 -07:00
Miguel Sousa
a00cacea96 Two more tests for pointInsidePen (#622) 2016-07-16 21:22:04 -07:00
Behdad Esfahbod
b1eeaa5151 [gvar] Fix point encoding
Where more than one run is used, it's only the first run's first point
that is absolute, all other values are relative.

Similar fix landing in FreeType soon.  Fixes lizzard glyph (glyphname
"dollar") in Zycon.
2016-07-15 18:15:17 -07:00
Michael Yin
18b905b06d [ttLib/pyftmerge] Handle cmap merge better (#635)
Changed the merge algorithm to properly handle cmap subtables
of type 4 and 12 with platform id and encoding ids of 3/1 and 3/10
respectively. All other subtables are not merged and ignored.
The resulting merged cmap table includes a subtable of format 4/3/1
and a format 12 subtable iff there are mappings outside of the BMP.

If one font has two codepoints that point to the same glyph,
and another font has the same code points pointing to two other glyphs,
keep the behavior where the first replacement glyph is stored in 'locl'
and output the third glpyh (or more) to let the user know that they were
dropped, instead of failing to merge the font.

Fixes #444
Fixes #322
2016-07-13 14:00:36 -07:00
Behdad Esfahbod
5cd1fbaff6 [subset] Clear CFF Encoding vector
Fixes https://github.com/behdad/fonttools/issues/620
2016-07-13 00:33:41 -07: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
3b8387fa45 [merge] Sort FeatureList by feature tag
Fixes https://github.com/behdad/fonttools/issues/444
2016-07-11 17:02:26 -07:00
Behdad Esfahbod
53d78d9956 [merge] Fix for ClassDef.Format and Coverage.Format
Part of https://github.com/behdad/fonttools/issues/444
2016-07-11 16:30:14 -07:00
Behdad Esfahbod
501e1f2f7e [symfont] Remove another level of indirection
Saves another few percents, though not as much as previous commit.
2016-07-11 12:23:56 -07:00
Behdad Esfahbod
7fd9dce0e9 [symfont] Speed up a bit
Remove one level of indirection in access to point data in generated
functions; ie. use p0, p1, ... instead of P[0], P[1], ...

Makes for about 10% speedup.
2016-07-11 12:23:56 -07:00
Behdad Esfahbod
cde56fce66 [symfont] Minor 2016-07-11 12:23:56 -07:00
Cosimo Lupo
1d809ac92f Merge pull request #632 from miguelsousa/cff-fix
Fix xml-roundtripping of CFF fonts (name-keyed & cid-keyed)
2016-07-06 19:48:59 +01:00