4951 Commits

Author SHA1 Message Date
Behdad Esfahbod
524b62a1b2 Add fontTools.ttLib.sfnt.readTTCHeader() 2018-01-23 13:44:56 -08:00
Cosimo Lupo
677954d5b9
unicodedata: add ot_tag_to_script function
returns the Unicode script code for a given OpenType script tag, or None if no match is found
2018-01-23 11:45:20 -08:00
Jany Belluz
1f1dca9b6d Fix a flaky designspace test 2018-01-23 17:04:45 +00:00
Jany Belluz
89979dea04 [feaLib.parser] Add option to not follow includes
Currently, the feature file parser always resolves included files,
parses their content and inserts it in the resulting AST. The original
`include` statement is lost.

This commit introduces an option to not follow inclusions. Instead, the
output AST will contain an `include` statement. This allows to process a
feature file on its own, and allows to round-trip it.

For example in glyphsLib, when going from a UFO to a .glyphs file, a
UFO feature file will be sliced up into Glyphs.app classes (e.g. a
GSFeaturePrefix with code `include(../family.fea);`) and when going back
from .glyphs to UFO, the feature file will be patched back together.
2018-01-23 11:07:16 +00:00
Jany Belluz
d6a5a489c0 [feaLib.parser] Parse a feature file with only comments 2018-01-22 17:07:28 +00:00
Denis Moyogo Jacquerye
29deb7e6fb
Merge pull request #1110 from belluzj/merge-design-space-document
Merge designSpaceDocument
2018-01-22 15:44:39 +00:00
justvanrossum
8ee7c32184 Added new FontTools icon images in several variations. 2018-01-20 17:25:19 +01:00
Cosimo Lupo
91a8cc33e7
unicodedata: add script_horizontal_direction function
same as harfbuzz hb_script_get_horizontal_direction.

We just hard-code the set of RTL script here, as it doesn't change often anyway.
The function is just syntactic sugar as it all does is basically looking up the
constant RTL_SCRIPTS set.
It's nice to have it here in a central place alongside 'script', 'script_name', etc.
2018-01-19 18:04:33 +00:00
Cosimo Lupo
38b25e00eb
Merge pull request #1152 from anthrotype/null-nameid
otConverters: don't write XML comment if NameID value is 0 == NULL
2018-01-19 16:46:29 +01:00
Cosimo Lupo
f62f79eb23
otConverters: don't write XML comment if NameID value is 0 == NULL
Fixes https://github.com/fonttools/fonttools/issues/1151
2018-01-19 13:25:59 +00:00
Cosimo Lupo
2ed59f20f1
Merge pull request #1150 from anthrotype/ot-tags-from-script
unicodedata: add ot_tags_from_script function
2018-01-19 13:21:03 +01:00
Cosimo Lupo
5e0bad94c5
export new ot_tags_from_script func in __all__ list [skip ci] 2018-01-18 20:26:44 +00:00
Cosimo Lupo
25b944ccce
typo 2018-01-18 20:24:28 +00:00
Cosimo Lupo
c9259c4723
unicodedata: add ot_tags_from_script function
Fixes https://github.com/fonttools/fonttools/issues/1112

This implements the same logic found in harbfuzz hb-ot-tag.cc to
convert between Unicode (or ISO 15924) script codes to OpenType script
tags as defined at:
https://www.microsoft.com/typography/otspec/scripttags.htm

461a605fde/src/hb-ot-tag.cc (L127)
2018-01-18 20:20:17 +00:00
Cosimo Lupo
60bc2b722b
Merge pull request #1148 from anthrotype/pair-pos-conflict-warning
emit warning if enum pos rules overridden by preceding single pair
2018-01-15 21:20:48 +01:00
Cosimo Lupo
95030cb788
minor: unused variables 2018-01-15 19:50:34 +00:00
Cosimo Lupo
a4e1d4a2bf
[builder_test] test_pairPos_redefinition_warning 2018-01-15 18:45:42 +00:00
Cosimo Lupo
27d40f5160
[feaLib.builder] don't error when specific kern pairs conflict
Fixes #1147
2018-01-15 18:43:10 +00:00
Cosimo Lupo
60f2c741c3
CapturingLogHandler: match the fully formatted log message in assertRegex
and not the raw 'msg' attribute which still has the '%' formatting placeholders
2018-01-15 18:38:27 +00:00
Cosimo Lupo
bc0480e19e
[sbix] fix TypeError when += str and bytes
Fixes #1145

There's probably more... we'll see once we have some data from chromacheck fonts to proper test this with
2018-01-11 20:15:58 +00:00
Cosimo Lupo
4942669c33
Update changelog 2018-01-10 11:43:49 +00:00
Jens Kutilek
b09c2e0d2b Add b to bytes 2018-01-09 16:13:35 +01:00
Behdad Esfahbod
2d4e76ff0b [bezierTools] Add calcCubicArcLength() and calcCubicArcLengthC()
Fixes https://github.com/fonttools/fonttools/issues/1142
2018-01-09 11:33:57 +01:00
Jens Kutilek
0cae12bdbd Add snippet manipulating raw table data 2018-01-09 11:18:01 +01:00
Behdad Esfahbod
f7312fc9d0 [misc.bezierTools] Slightly improve previous commit
Part of https://github.com/fonttools/fonttools/issues/1142
2018-01-08 13:43:45 +00:00
Behdad Esfahbod
5dd888da1d [misc.bezierTools] Implement cusp loop for calcQuadraticArcLength()
Part of https://github.com/fonttools/fonttools/issues/1142
2018-01-08 13:41:27 +00:00
Behdad Esfahbod
fe5a2ea870 [misc.bezierTools] Remove approximate_fallback arg from calcQuadraticArcLength()
Part of https://github.com/fonttools/fonttools/issues/1142
2018-01-08 13:41:27 +00:00
Cosimo Lupo
a322156af9 Bump version: 3.21.2 → 3.21.3.dev0 2018-01-08 12:40:40 +00:00
Cosimo Lupo
a3eadbd0f9 Release 3.21.2 2018-01-08 12:40:40 +00:00
Cosimo Lupo
79ece54181 Update changelog 2018-01-08 12:40:32 +00:00
Behdad Esfahbod
633f44da39 [varLib.merger] Fix merging of PairPos Format2 with missing subtables 2018-01-08 10:49:25 +00:00
Behdad Esfahbod
e58499cc06 [varLib.merger] Minor 2018-01-08 10:31:50 +00:00
Behdad Esfahbod
b624e0c08e [varLib.merger] Handle missing PairPos format1/2 subtables in AligningMerger
Fixes https://github.com/fonttools/fonttools/issues/1125

The Format2 is still failing in my test case. Investigating.
2018-01-08 10:27:33 +00:00
Cosimo Lupo
40e50b60c3 Revert "Merge pull request #1136 from santhoshtr/svg-arc-support"
This reverts commit 5c392bc86542fbbc0c63335cfedae0d1406b0794, reversing
changes made to 4b69d77ae57776480901e2af82c7d9c1c29de8d6.
2018-01-05 13:07:57 +00:00
Cosimo Lupo
5c392bc865
Merge pull request #1136 from santhoshtr/svg-arc-support
svgLib: Add support for arcs in SVG path parser
2018-01-05 12:22:13 +00:00
Santhosh Thottingal
a8abf7246c Remove duplicate point, add more tests 2018-01-05 17:31:53 +05:30
Cosimo Lupo
2b13c47d3e textTools: safeEval = ast.literal_eval
https://github.com/fonttools/fonttools/pull/1139#pullrequestreview-86720679
2018-01-04 19:41:52 +00:00
Cosimo Lupo
4a20899cb4 textTools: use ast.literal_eval for safeEval
go back to using literal_eval, as nobody does complex expressions in TTX files,
and eval is evil.

Fixes https://github.com/fonttools/fonttools/issues/164
2018-01-04 16:53:54 +00:00
Santhosh Thottingal
3926353a9f Fix tests for arc parsing using approximate comparison of float values 2018-01-04 21:14:58 +05:30
Santhosh Thottingal
06dc10d30b Fix syntax error about starred expression in python < 3.5
Also minor documentation fix.
2018-01-04 17:56:14 +05:30
Cosimo Lupo
4b69d77ae5 Bump version: 3.21.1 → 3.21.2.dev0 2018-01-03 20:09:22 +00:00
Cosimo Lupo
d53b01f14f Release 3.21.1 2018-01-03 20:08:49 +00:00
Cosimo Lupo
3a581f0f21 Update changelog 2018-01-03 20:08:07 +00:00
Cosimo Lupo
4537d140c7
Merge pull request #1137 from andir/add-afm-manifest
`*.afm` files are missing from MANIFEST.in
2018-01-03 19:21:02 +00:00
Andreas Rammhold
56548d3d41
Add missing *.afm test asset line to MAINFEST.in 2018-01-03 19:20:40 +01:00
Cosimo Lupo
c42749466a [S_V_G_] fix dumping toXML SVG tables containing colorPalettes
As reported by glukfonts in
https://github.com/fonttools/fonttools/issues/1124
2018-01-03 15:40:35 +00:00
Santhosh Thottingal
37b3889429 svgLib: Add test for arc parser 2018-01-01 20:46:20 +05:30
Santhosh Thottingal
82e119e0e3 svgLib: Add support for arcs in SVG path parser
Implement the arc to curve points calculation using the original
svg.path library and use the curve points for the pen.

The Arc class and methods to parameterize and get curve points are
copied.

This makes the svg to glif conversion possible for any SVGs.
2018-01-01 20:05:02 +05:30
Khaled Hosny
5e23b0545b [feaLib] Test mixed single/multiple substitutions 2017-12-22 16:30:34 +02:00
Khaled Hosny
eeb9610ec1 Simplify 2017-12-22 16:30:34 +02:00