Behdad Esfahbod
b9dcbb5668
Do some less work!
2016-07-25 04:00:44 -04:00
Behdad Esfahbod
021d8c107d
Remove unused code
2016-07-25 03:57:33 -04:00
Behdad Esfahbod
59e8ce6e84
Inline cubic_cubic_fit()
...
Results in a few percents speedup.
2016-07-25 03:53:23 -04:00
Behdad Esfahbod
3aa4c1e1e4
Remove unused error code
2016-07-25 03:38:13 -04:00
Behdad Esfahbod
612aa2af87
Return results in tuples, not complex points
2016-07-25 03:35:40 -04:00
Behdad Esfahbod
1cc3c5eae8
Inline _splitCubicIntoN()
2016-07-25 03:14:02 -04:00
Behdad Esfahbod
40bba687ab
Replace splitCubicAtT() with splitCubicIntoN()
...
Another 6% speedup.
2016-07-25 03:13:01 -04:00
Behdad Esfahbod
64af3ad4a8
Inline cubic_quadratic_fit()
...
Another 5%.
2016-07-25 03:04:51 -04:00
Behdad Esfahbod
abc18236af
Inline splitCubicIntoTwo()
...
Saves another 5%.
2016-07-25 02:12:15 -04:00
Behdad Esfahbod
c50d498ea5
Hand-code splitCubicIntoThree()
2016-07-24 14:10:41 -04:00
Behdad Esfahbod
8a13ef1edf
Use splitCubicIntoTwo() more
...
Shaves another 5%.
2016-07-24 13:54:52 -04:00
Behdad Esfahbod
dff2cd8669
Add splitCubicIntoTwo()
...
Speeds up another 15% or so.
2016-07-24 13:54:52 -04:00
Behdad Esfahbod
12629a715b
Whitespace
2016-07-23 17:11:45 -07:00
Behdad Esfahbod
f63a31dd99
Do less work.
2016-07-23 17:11:28 -07:00
Behdad Esfahbod
a412c1c9ec
Make benchmark callable from profile / cProfile module
2016-07-23 16:28:28 -07:00
Behdad Esfahbod
d3f566ba54
Use complex numbers to implement points
...
Shows a 30% speedup for me.
2016-07-22 23:40:44 -07:00
Behdad Esfahbod
46f8416fff
Remove more unused code
2016-07-22 23:11:13 -07:00
Behdad Esfahbod
bd52b4d510
Remove unused code
2016-07-22 15:52:00 -07:00
Behdad Esfahbod
49c2d886a0
Use exact error
...
To me, this looks about 40% faster.
WIP though. API needs to change to take out error output argument.
Further optimization is possible by merging loops.
2016-07-22 02:21:41 -07:00
Behdad Esfahbod
185216bbfe
Remove unused return values
2016-07-22 01:13:12 -07:00
Behdad Esfahbod
2d5e57e973
Make it twice faster by inlining lerp and expanding bezier equations
2016-07-22 00:49:19 -07:00
James Godfrey-Kittle
3cc8db41d8
Merge pull request #30 from anthrotype/normalize-offcurves
...
cu2qu.pens: make sure closed contour starts with an on-curve
2016-07-21 10:29:07 -07:00
Cosimo Lupo
ae2eb8d4df
cu2qu.pens: make sure closed contour starts with an on-curve
...
This is still the same contour as before, as UFO spec allows both;
it's just normalized so that the first segments' off-curves appear at
the bottom, and the first point in the contour is an on-curve.
2016-07-21 11:35:41 +01: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
Adrien Tétar
5a80482507
Merge pull request #39 from moyogo/unicode-userName
...
make sure we’re passing unicode string to userNameToFileName()
2016-07-11 08:36:54 -07:00
Denis Moyogo Jacquerye
4f83f4bbe1
tests: copy doctest as unittest in test_filenames
2016-07-11 13:49:59 +01:00
Denis Moyogo Jacquerye
bb21cb7c3a
userNameToFileName expects userName to be unicode strings, let it raise
...
if not
2016-07-11 13:49:59 +01:00
Adrien Tétar
ec0fe57545
filenames: only allow unicode in py2
...
i.e. restore the old behavior
2016-07-08 21:19:16 -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
Miguel Sousa
8bf1bd4f30
[cff] fix fetching of fdSelectIndex value
2016-07-06 10:27:02 -06:00
Miguel Sousa
c04a6d922c
[cff] fdSelect array only exists in CID fonts, so test for the presence of fdArray and set the selector value to None otherwise
2016-07-06 04:23:43 -06:00
Cosimo Lupo
9c6c4c4f4c
merge_woff_metadata.py: make sure flavor is in "woff" or "woff2"
2016-07-04 16:11:04 +01:00