Sascha Brawer
228550a1d2
[AAT] Do not prune AATLookup values
...
Before this change, the decoder would silently remove "redundant" values
when decompiling AAT lookups. However, it is perfectly valid for a lookup
to map a glyph ID to itself, and also not all AAT lookups have glyph IDs as
their value range.
2017-08-15 18:33:57 +02:00
Sascha Brawer
020f7391ef
[morx] Parametrize AATLookup value type in otData
2017-08-14 21:34:15 +02:00
Sascha Brawer
61874d3600
[morx] Generalize AATLookup to other value types
...
With AAT, the same lookup data structure can be used for various
types of values. In the morx table, the values are glyph IDs or
glyph classes, which both are encoded as 16-bit unsigned integers.
In other AAT tables, however, the values can be different data types
with different encodings. By passing a `valueWriter` callback and
explicit `valueSize`, we prepare for eventually templatizing
the building of AATLookups.
Also, assert that the called writer wrote the exact number of bytes
that was predicted when figuring out what format should be used for
encoding an AATLookup.
2017-08-14 21:34:15 +02:00
Sascha Brawer
7f2007f46c
[morx] Write AATLookup format 8
2017-08-14 21:34:15 +02:00
Sascha Brawer
91827e663f
[morx] Write AATLookup format 2
2017-08-14 21:34:15 +02:00
Sascha Brawer
68dc15375b
[morx] Fix output for AATLookup format 6
...
We now produce the correct binary search headers, and add a fake item
for terminating the binary search.
2017-08-14 21:34:15 +02:00
Sascha Brawer
57f01b27cb
[morx] Preliminary code for writing AATLookups
...
Needs more work.
2017-08-14 21:34:15 +02:00
Sascha Brawer
4b5b8ea53d
[morx] Implement AATLookup.xmlRead
2017-08-14 21:34:15 +02:00
Sascha Brawer
b40ba05f6f
[morx] Group AATLookup substitutions into a parent XML element
2017-08-14 21:34:15 +02:00
Sascha Brawer
483bb67b60
Rebase morx branch to current master
2017-08-14 21:34:15 +02:00
Cosimo Lupo
d89fcf93bc
[varLib_test] add 'MVAR' to expected tables list
...
Note: the `expect_ttx` test is passing, but the `check_ttx_dump` which ensures the TTX dump is the same after saving and reloading the font, is currently failing, as the "ValueRecordSize" count is None
```
--- /Users/cosimolupo/Documents/Github/fonttools/Tests/varLib/data/test_results/Build.ttx
+++ /var/folders/7k/fl5q53lj51g0d8hxdkrx9_z80000gn/T/tmpoBCAua/tmp1.ttx
@@ -174,8 +174,7 @@
<MVAR>
<Version value="0x00010000"/>
<Reserved value="0"/>
- <ValueRecordSize value="8"/>
- <!-- ValueRecordCount=2 -->
+ <ValueRecordSize value="None"/>
<VarStore Format="1">
<Format value="1"/>
<VarRegionList>
```
2017-08-03 16:51:25 +01:00
Masaya Nakamura
3708f2c8d3
Don't cache charString bounds
...
https://github.com/fonttools/fonttools/pull/970#discussion_r117903692
2017-08-01 10:54:47 +09:00
Masaya Nakamura
423e829b73
[_v_h_e_a_test] Add tests for recalc()
2017-08-01 10:53:27 +09:00
Masaya Nakamura
a4fda12810
[_h_h_e_a_test] Add tests for recalc()
2017-08-01 10:51:48 +09:00
Masaya Nakamura
b22b59f730
[cffLib] Use intRect() for FontBBox rounding
...
AFDKO seems to calculate bounds and side bearings in this manner.
2017-08-01 10:51:47 +09:00
Masaya Nakamura
b84ee6744d
[cffLib] Recalc CFF's FontBBox when compiling
2017-08-01 10:51:47 +09:00
Masaya Nakamura
a68bfc2458
[psCharStrings] Add recalcBounds() to T2CharString
2017-08-01 10:51:47 +09:00
Behdad Esfahbod
39ffa74128
Merge pull request #1019 from fonttools/varlib-iup-optimal
...
Varlib iup optimal
2017-07-28 12:09:27 +01:00
Cosimo Lupo
4398e3b26b
[Tests/varLib] fix up expected test data following latest IUP optimization algorithm
2017-07-27 17:06:32 +01:00
ReadRoberts
22162d8a71
Update CFF2 test XML data to match latest output: default FontMatrix is omitted from FDArray FontDict.
2017-06-20 16:23:52 -07:00
Denis Moyogo Jacquerye
6d07d48846
Upate CFF tests for default for UnderlinePosition
...
Missing UnderlinePosition added in a72f26e5
2017-06-09 07:03:54 +01:00
Miguel Sousa
d80bc25dad
Merge branch 'specializer-tests'
2017-05-31 17:43:32 -07:00
Miguel Sousa
0d894c6ec2
[cffLib.specializer_test] Resolve conflicts
2017-05-31 17:20:34 -07:00
Cosimo Lupo
bdeb9f8925
[Tests/feaLib/data] minor: update comments referring to issue #976
2017-05-30 11:01:39 +01:00
Cosimo Lupo
12b90f073e
[feaLib] don't de-duplicate lookups
...
keep original lookup order and preserve the feature file's semantics
Fixes https://github.com/fonttools/fonttools/issues/448
2017-05-30 11:45:03 +02:00
Cosimo Lupo
fd3cd6f367
Merge pull request #969 from fonttools/varlib-iup
...
Varlib iup
2017-05-24 11:44:59 +01:00
Behdad Esfahbod
877ac7540c
Fix test after 0ed2df3f22bd4172e439b8deeb2070e3f62b26d3
...
interpolate_layout now accepts axis names in designspace name
format, NOT axis tags.
2017-05-23 00:31:15 -07:00
Jens Kutilek
92c8b3f754
Add test and test data for mutator with interpolated points
2017-05-18 16:40:33 -07:00
Behdad Esfahbod
af041259ee
Fix tests for recent changes
2017-05-18 16:06:10 -07:00
Cosimo Lupo
faa899f9e9
[specializer_test] temporarily disable failing tests
...
Let's appease the bots for now.
Later on we can add tests for invalid args number for each operator so specializer.py module can reach 100 coverage.
2017-05-16 23:01:00 +01:00
Cosimo Lupo
1c9198e3f0
[_g_l_y_f] add test for GlyphCoordinates' float precision loss issue ( #964 )
2017-05-16 10:34:37 +01:00
Miguel Sousa
5d981cae0a
[cffLib.specializer_test] Additional tests
2017-05-08 15:49:56 -07:00
Miguel Sousa
3c29ff73a7
[cffLib.specializer_test] Tests for missing arguments
2017-05-08 15:49:47 -07:00
Miguel Sousa
1d3ac1add4
[cffLib.specializer_test] TODO
2017-05-08 15:49:39 -07:00
Behdad Esfahbod
30b804003e
[cffLib.specializer] Add programToString and stringToProgram from _test.py
2017-05-07 22:12:19 -06:00
Behdad Esfahbod
a8b841a4a9
[cffLib.specizalier_test] Add a few more tests
2017-05-07 22:04:17 -06:00
Behdad Esfahbod
041384a0e8
[cffLib.specializer_test] Add tests for peephole optimization
2017-05-07 13:08:41 -06:00
Miguel Sousa
2f14200a89
[cffLib.specializer_test] specializeProgram tests
...
The failing tests are due to missed optimization opportunities.
The current tests are not hitting some edge cases.
2017-05-07 03:14:24 -07:00
Miguel Sousa
2f7f36e2f4
[cffLib.specializer_test] charstring extras
2017-05-07 00:23:12 -07:00
Miguel Sousa
9617f5f26b
[cffLib.specializer_test] generalizeProgram tests
2017-05-06 22:57:37 -07:00
Miguel Sousa
2d02c54d1a
[t2CharStringPen_test] Update test results
2017-05-06 00:11:27 -07:00
Adrien Tétar
fbb9060311
Merge pull request #941 from adrientetar/warn-dupl-markclass
...
builder: throw when a mark is defined in multiple mark classes
2017-05-01 21:38:14 +02:00
Sascha Brawer
017fa4e9c6
[fvar] Expose flags in XML
...
Fixes https://github.com/fonttools/fonttools/issues/932 .
2017-05-02 00:51:44 +08:00
Adrien Tétar
3e3ff0051e
builder: throw when a mark is defined in multiple mark classes
...
(within the same lookup)
See #453 .
2017-05-01 13:14:38 +02:00
Cosimo Lupo
0690634eb1
[t2CharStringPen_test] add test for horizontal _relativeMoveTo (hmoveto)
2017-04-28 15:36:42 +01:00
Miguel Sousa
86b820ad0d
[t2CharStringPen] Update tests
2017-04-28 03:27:42 -07:00
Sascha Brawer
3f839878eb
[name] Fix issues with name.addMultilingualName()
...
Fixes https://github.com/fonttools/fonttools/issues/931 .
2017-04-21 13:14:24 +08:00
Sascha Brawer
a5c8977dd3
[name] Fix platform ID for names whose language code is in ltag
table
...
https://github.com/fonttools/fonttools/issues/931
2017-04-20 17:38:31 +08:00
Behdad Esfahbod
f056c124e5
[misc.classifyTools] Make classification order stable
...
Sets don't have a welldefined comparison function, so sort them...
Not the most efficient implementation, but good enough.
Fixes https://github.com/fonttools/fonttools/issues/927
2017-04-18 15:57:14 -07:00
Sascha Brawer
e8530360bd
[name] Add helper for building multi-lingual names
...
Fixes https://github.com/fonttools/fonttools/issues/921 .
2017-04-19 02:26:32 +08:00