Khaled Hosny
09174b9129
[CFF2] Make recalcBBoxes work with CFF2 table
...
Add checks for CFF2 table next to CFF checks as applicable.
2020-01-31 23:39:47 +02:00
Khaled Hosny
38981b6dae
[varLib] Allow using CFF2 table as source
...
Nothing clever, if the source font has a CFF2 table use it as if it were
a CFF table (i.e. non-variable, not sure what would happen in the source
CFF2 was variable already).
2020-01-31 23:39:47 +02:00
Khaled Hosny
014991d710
Merge pull request #1815 from khaledhosny/fealib-flag-fix
...
[feaLib] Don’t reset lookupflag in nested lookups
2020-01-30 13:06:42 +02:00
Khaled Hosny
42b51f084f
Merge pull request #1814 from khaledhosny/fealib-mult-fix
...
[feaLib] fix mixed single/multiple substitutions
2020-01-30 13:02:39 +02:00
Khaled Hosny
eed252cb92
[feaLib] Don’t reset lookupflag in nested lookups
...
In makeotf, lookups defined inside feature blocks inherit the current
lookupflag of the feature, so don’t reset the lookupflag for such
lookups.
2020-01-29 23:46:40 +02:00
Khaled Hosny
22bfc305ee
[feaLib] fix mixed single/multiple substitutions
...
If the single substitution involved a glyph class, we were incorrectly
using only the first glyph in the class.
Broken since ec6ff821f0e72022d7aec8794b6bb589d8f81808, apparently no one
else uses this feature!
2020-01-29 22:36:54 +02:00
justvanrossum
0bb234d218
added test
2020-01-29 12:42:27 +01:00
justvanrossum
92e03c72b2
removed leftovers from previous edit
2020-01-29 12:02:26 +01:00
justvanrossum
69800b0db5
no need to explicitly close: varLib.build() will do that.
2020-01-29 12:01:05 +01:00
justvanrossum
49507a9de8
undo DesignSpaceDocument context manager changes, and explicitly (but opt-out) close master_fonts within varLib.build()
2020-01-29 11:55:39 +01:00
justvanrossum
e18f63cfa3
make DesignSpaceDocument a context manager that closes source fonts, and use it in the varLib tests.
2020-01-29 11:17:57 +01:00
David Corbett
62ed43ddb9
Do not fail on duplicate multiple substitutions
2020-01-26 10:30:17 -05:00
Cosimo Lupo
a32fd30c2d
subset_test: add test for optimizing SinglePos format when all subsetted values are same
2020-01-16 18:30:07 -08:00
Cosimo Lupo
58cbf7b814
otTables_test: get XML dumps for expected MarkBasePos split subtables
...
This tests will fail because of this bug: https://github.com/googlefonts/noto-source/issues/145
The mark records' Class values of the second subtable should be updated to match the new class count
(the two split subtable contain half of the original mark classes). Otherwise the base records would
implicitly reference the wrong or non-existent mark classes...
The fix is in the following commit.
2020-01-07 12:57:20 +00:00
Jens Kutilek
720488ed4b
Merge branch 'master' into fealib-duplicate-sub-warning
2019-12-18 11:24:00 +01:00
Jens Kutilek
67da54fb5f
Add a simple test
2019-12-18 11:09:23 +01:00
Cosimo Lupo
70c3eccb4e
glifLib_test: test xml containing <!-- comment -->
2019-12-16 12:01:40 +00:00
Cosimo Lupo
3b9a94d659
Merge pull request #1782 from anthrotype/subset-feature-vars-remap-indices
...
[subset] remap FeatureVariations SubstitutionRecord.FeatureIndex
2019-12-12 13:51:59 +00:00
Just van Rossum
cf0e43d6e5
[ttLib.glyf] make glyph.draw() skip redundant final lineTo() ( #1775 )
...
* [ttLib.glyf] make glyph.draw() skip redundant final lineTo()
This ensures that g.draw(pen) and g.drawPoints(PointToSegmentPen(pen)) are now 100% equivalent.
2019-12-12 13:44:10 +01:00
Cosimo Lupo
9c0c3a1375
subset_test: Add (failing) test to repro #1777
...
the 'rvrn' feature is being incorrectly dropped because the feature indexes
change if some other feature occuring before 'rvrn' is dropped, like
in this test case.
2019-12-12 12:29:08 +00:00
Cosimo Lupo
e821f1fb9e
fontBuilder: add FontBuilder.addFeatureVariations method
...
like the existing addOpenTypeFeatures
it simply forwards to featureVars.addFeatureVariations
2019-12-12 11:55:13 +00:00
Just van Rossum
e2c60e3dcb
[ttLib.glyf] Fix flag bug in glyph.drawPoints() ( #1774 )
...
This was the same problem as glyph.draw() had, as reported in #1771 .
2019-12-08 21:55:30 +01:00
Just van Rossum
46a06cabf2
[ttLib.glyf] Make sure to use the flagOnCurve mask in glyph.draw() ( #1772 )
...
* When drawing glyf outlines to a pen, make sure to use the flagOnCurve mask, so we don't trip over the overlap flag, that is set when instantiating variable fonts to indicate that overlaps are ok.
Fixes #1771 .
2019-12-06 10:27:31 +01:00
Cosimo Lupo
ae5212f76b
add tests for RecordingPointPen
2019-11-28 16:32:40 +00:00
Cosimo Lupo
f6e69af7ba
Merge pull request #1763 from anthrotype/ttpen-float-coords
...
ttGlyphPen must round float coordinates and offsets
2019-11-26 16:31:25 +00:00
Cosimo Lupo
7fe59e4b94
ttGlyphPen_test: test computing bounds with float coordinates and offsets
...
https://github.com/googlefonts/fontmake/issues/593
This test currently fails. The compositeGlyph.xMax is set to 281, but it should be 282.
2019-11-26 16:03:18 +00:00
Jens Kutilek
6c3edaded2
ufoLib groupnames conversion 2 → 3 ( #1762 )
...
* If a group name is the same as a glyph name, it cannot be a kerning group name
* Add test
2019-11-22 09:51:35 +01:00
Cosimo Lupo
12e1a6de37
instancer: catch early if input range doesn't include current default
2019-11-15 19:02:12 +00:00
Cosimo Lupo
7c695d411f
Merge remote-tracking branch 'origin/master' into l3-instancer
2019-11-15 17:05:47 +00:00
Cosimo Lupo
9a707a2c1b
instancer_test: test empty HVAR is not dropped
2019-10-24 17:37:49 +01:00
Cosimo Lupo
10d544d6a4
instancer_test: update tests for instantiateSTAT new behavior
...
And add tests for limiting STAT's axis ranges.
2019-10-24 17:37:49 +01:00
Cosimo Lupo
b8500ac97c
instancer_test: add tests for restricting axis ranges (L3)
2019-10-24 17:10:32 +01:00
Cosimo Lupo
141ff20b37
varLib_test: test building (pseudo) VF with only a single master
...
The SingleMaster.designspace contains only one source master, so there is no real
variation data.
Still, and empty HVAR table is added (with RegionAxisCount == fvar.AxisCount).
The gvar and cvar table are not added in this case, since they are empty and
not required.
2019-10-24 14:10:08 +01:00
justvanrossum
76b8517102
ooops, forgot to add the expected results file
2019-10-20 09:25:50 +02:00
justvanrossum
e2bac99eb8
Test adding FeatureVariations with an existing 'rclt' feature
2019-10-20 09:19:40 +02:00
justvanrossum
4322a3f95d
more testing of rules-processing-last
2019-10-18 13:36:02 +02:00
justvanrossum
f4925fff44
perform some testing with <rules processing=...> and doc.rulesProcessingLast
2019-10-18 13:33:29 +02:00
Nikolaus Waxweiler
641058ead2
Remove PY2 conditional and unicode
import
2019-10-12 12:20:22 +01:00
Nikolaus Waxweiler
969df8303b
Remove some Python 2 era import gaming
2019-10-11 22:36:33 +01:00
Nikolaus Waxweiler
e4f7495f32
[name] Be less cautious about getting data for NameRecord comparisons
2019-10-11 17:39:56 +01:00
Nikolaus Waxweiler
2e82438d93
[name] Handle duplicate name records with different string
types
2019-10-11 14:24:03 +01:00
Cosimo Lupo
2eeba71d5f
fix cvar, gvar and instancer tests to compare floats as almost-equality
2019-10-08 13:40:07 +01:00
Cosimo Lupo
c60512de0e
_g_l_y_f: use floatToFixedToStr and strToFixedToFloat in GlyphComponent toXML/fromXML
2019-10-08 13:40:06 +01:00
Cosimo Lupo
8791caf3b8
_a_v_a_r: use floatToFixedToStr and strToFixedToFloat in toXML/fromXML methods
2019-10-08 13:40:05 +01:00
Cosimo Lupo
d66c92fbe0
_f_v_a_r: use floatToFixedToStr and strToFixedToFloat in Axis and NamedInstance
2019-10-08 13:40:05 +01:00
Cosimo Lupo
b50c10af7a
TupleVariation_test: test toXML and fromXML with float axis supports
2019-10-08 13:40:05 +01:00
Cosimo Lupo
8500dfca71
psCharStrings_test: test load/dump fixed point numbers
2019-10-08 13:40:04 +01:00
Cosimo Lupo
6fd31d47ec
fixedTools: use simple divison in fixedToFloat; add floatToFixedToStr, strToFixedToFloat, etc.
...
Fixes #737
2019-10-08 13:40:03 +01:00
Khaled Hosny
b99ae0d469
[feaLib] Fix handing of duplicate LigatureCaret
...
The spec has been updated for a while to allow only one rule per glyph,
and makeotf uses the first and ignores the rest.
See https://github.com/adobe-type-tools/afdko/issues/95 , and
https://github.com/adobe-type-tools/afdko/issues/155
2019-09-26 16:44:46 +02:00
Khaled Hosny
91cb76554d
[voltLib] Handle ALL and NONE in PROCESS_MARKS
...
Both were treated as group names, as NONE was not checked at all and
code for ALL was never reached.
2019-09-25 13:03:52 +02:00