Sascha Brawer
7f774ae84c
[morx] Change MorphType to uint8, to comply with the spec
2017-08-14 21:34:15 +02:00
Sascha Brawer
f56b71937d
Add missing parts from morx branch
...
After this change, the `morx` table in Zapfino.ttf can be ttx'ed again.
2017-08-14 21:34:15 +02:00
Rob McKaughan
b8e2d90cda
Add AxisValueFormat4 for STAT table v1.2 from OT v1.8.2.
2017-07-24 16:12:31 -07:00
Miguel Sousa
4a8c1511ec
[otData] Label AxisNameID as NameID
2017-07-14 00:08:52 -07:00
Behdad Esfahbod
0cc1721b8d
[MVAR] Update for OT 1.8.1 rename
2017-01-10 11:01:06 -08:00
Behdad Esfahbod
b4d53811e9
Implement MVAR table
2016-12-18 21:55:45 -06:00
Denis Moyogo Jacquerye
250017289b
Revert "[STAT] It was decided to NOT bump minor version..."
...
This reverts commit 06de8ce81824f737a1e35bfb00b1f68db767037e.
2016-12-12 16:42:55 +00:00
Behdad Esfahbod
06de8ce818
[STAT] It was decided to NOT bump minor version...
...
...since no one implements STAT so far. So, version stays at 1.0.
2016-12-07 18:11:50 -08:00
Behdad Esfahbod
9ca34a08ec
[STAT] Update for version 1.1; hasn't made it into spec yet!
2016-12-04 21:22:47 -08:00
Sascha Brawer
8b78a7890f
[STAT] Fix unit tests and implementation of STAT table
...
Still need to look at one failing test case. Disabling it for now.
2016-12-02 15:26:49 -08:00
Sascha Brawer
84da076bb9
[STAT] Fix one test case
2016-12-02 14:54:03 -08:00
Behdad Esfahbod
d80bb58723
More STAT
2016-12-02 14:14:48 -08:00
Behdad Esfahbod
913b3c477c
Finish STAT table
...
Test needs fix.
2016-12-02 14:06:13 -08:00
Sascha Brawer
59368c424a
WIP: Implement STAT table
2016-12-02 13:37:42 -08:00
Sascha Brawer
0588502771
Add otConverters.NameID ( #708 )
...
When writing XML, this produces a comment with the English name.
If the name ID is missing from the name table, it logs a warning.
2016-10-14 21:04:35 +02:00
Behdad Esfahbod
e9ab61c5b5
[GX] Fix FeatureVariations
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
2f38f4a05a
[GX] Fix typo
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
6b564d7d66
[varLib] Add FeatureVariations to GSUB/GPOS
...
Based on patch from Read Roberts.
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
402d726692
[ot] Change Version to be an integer instead of float
...
API Change:
This will change XML output for GSUB/GPOS/GDEF/MATH/BASE/JSTF/...
Scripts that set the Version for those to 1.0 or other float values
also need fixing. A warning is emitted when code or XML needs fix.
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
72fe29359b
[varLib] Start building Device table for variations
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
3064985880
VarStore: Remove Reserved field
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
47a7dde070
[varLib] Make VarData.NumShorts automatic
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
f11414c93b
[varLib] Implement new VarData, aka. ItemVariationData, table
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
38c88f6996
[varLib] Rename VarTuple to VarRegion
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
e7163eddb0
[varLib] Rename VarTupleList to VarRegionList
...
Aka. ItemVariationRegionList.
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
35a401f04d
[varLib] Add support for VarIdxMap, aka. DeltaSetIndexMap.
...
Update HVAR / VVAR to latest draft.
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
c1717224da
[varLib] Generate direct HVAR
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
e2da17e032
[opentype-gx/varLib] More work towards VariationStore
...
And HVAR/VVAR tables.
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
32dd2e9e7e
Add a VarStore at the end of GDEF
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
4d7b5f6472
[varLib] Start implementing VariationStore
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
754a20d987
Implement lazy array for loading otData-driven arrays
...
Speeds up subsetting of GPOS table with many pairs by huge factor
(counted 5).
2015-07-02 18:00:41 -07:00
Sascha Brawer
5bd9ade399
[GX] Remove ‘fvar’ table definition from otTables.py
...
There now is a Python implementation of variation axes, because this
makes it (much) easier to build variable fonts from code. Therefore,
the definitions in otTables.py are not needed anymore.
2015-06-24 15:58:05 +02:00
Behdad Esfahbod
6c83fe4846
Really fix SingleSubst delta math
...
I had broken this in e06166b83aa82582dab2e011520b1a77f72aa9f9.
Fix that, and other issues. Since I made that last commit, it has
become clear that SingleSubst works by adding delta and then doing
module 65536.
HarfBuzz was updated for this in 2011:
commit 52ebdff49d13f239efc886de935d47be9860f6e5
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Tue Sep 27 12:38:16 2011 -0400
Fix GSUB lookuptype 1 subtype 1 delta wrapping
2015-06-12 10:27:04 -07:00
Behdad Esfahbod
7c9ab300c2
Add standard imports to all python sources
...
Previously, the trivial files didn't have them.
2015-04-14 17:26:59 -07:00
Behdad Esfahbod
b9ac90a8f9
[GX] Add 'fvar' table support
...
I might change the table format in the future, but it's functional now.
2015-03-11 15:29:35 -07:00
Behdad Esfahbod
0d5d12e02a
Adjust 'feat' table format
...
As discussed here:
730bedd3d1
2015-01-21 15:46:30 -08:00
Behdad Esfahbod
730bedd3d1
[AAT] Add support for 'feat' table
...
Reusing the otData machinery.
See discussion at:
https://github.com/behdad/fonttools/issues/178
https://github.com/behdad/fonttools/pull/180
2014-09-30 19:04:16 -04:00
Behdad Esfahbod
9e482332ba
Fix subtable-split logic
...
Though, the split logic isn't implemented for GPOS, so I have not
been successful in actually exercising it so far.
2013-12-17 05:46:51 -05:00
Behdad Esfahbod
f952a22af7
Implement MATH table
...
Fixes https://github.com/behdad/fonttools/issues/67
2013-12-09 00:40:48 -05:00
Behdad Esfahbod
3fa26d783f
py23 Use fixedToFloat() for fixed version numbers
2013-11-28 18:53:30 -05:00
Behdad Esfahbod
32c10eecff
py23 from __future__ import division and adjust divisions
2013-11-28 17:32:42 -05:00
Behdad Esfahbod
3ac9e63fce
Load / save FeatureParamSize decipoints values as float
2013-11-26 19:42:55 -05:00
Behdad Esfahbod
9e1bd2d0b4
Implement FeatureParams
...
All types of FeatureParams are correctly handled now.
The only thing not handled is broken fonts generated with the
old AFDKO that have their FeatureParams offset computed wrong.
I don't currently plan on handling those.
Fixes https://github.com/behdad/fonttools/issues/38
2013-11-26 19:23:08 -05:00
Behdad Esfahbod
f41056dc76
Implement MarkFilteringSet in Lookup
2013-11-25 05:18:00 -05:00
Behdad Esfahbod
5b9cabcb9a
Implement GDEF MarkGlyphSetsDef
...
Aka. "Mark filtering sets".
Fixes https://github.com/behdad/fonttools/issues/39
2013-11-25 04:01:56 -05:00
Behdad Esfahbod
7d130307e6
Simplify converter mapping for DeltaValue
2013-11-24 16:13:00 -05:00
Behdad Esfahbod
a221a57ccd
Improve Version handling
...
Version is really just a major.minor, NOT a Fixed. But it has
been implemented as Fixed. We now:
1. Check that major is 1,
2. If minor is not 0 (only defined for GDEF so far), then
print the whole thing as hex in XML,
3. When reading the XML, accept hex,
4. In all four methods dealing with Version, support both
fixed version (ie. 1.0), and long version (ie. 0x00010000).
2013-11-23 19:45:29 -05:00
Behdad Esfahbod
0b18ef6111
Remove Fixed vs fixed32 inconsistency
2013-11-23 19:21:24 -05:00
Behdad Esfahbod
ea017bd66f
Remove USHORT vs uint16 inconsistency
2013-11-23 19:19:48 -05:00
Behdad Esfahbod
0de65295f6
Remove script to build otData.py
...
The was was originally generated, but is static now and this
allows cleaning it up and modifying it.
2013-11-23 19:12:11 -05:00