3364 Commits

Author SHA1 Message Date
Cosimo Lupo
a533a3be44 .gitignore: add .eggs/ folder, used by setuptools to download test adn setup requirements 2016-09-28 19:26:11 +01:00
Cosimo Lupo
7a267f3339 Merge pull request #679 from fonttools/opentype-gx
Try fixing up Windows bot failure
2016-09-28 19:22:26 +01:00
Cosimo Lupo
95c1a3e2f7 C_F_F_test.py: load test CFF xml/binary data from external files 2016-09-28 18:13:11 +01:00
Cosimo Lupo
e0a10698aa [ttLib] must cast 'sfntVersion' to native string type (bytes on py2, str on py3) to normalize repr() output 2016-09-28 18:08:08 +01:00
Cosimo Lupo
674ceac0ce ttLib/tables/testdata: add C_F_F_.bin and C_F_F_.ttx for CFF table rountrip tests 2016-09-28 17:59:23 +01:00
Behdad Esfahbod
f9672ba7e1 Try fixing up Windows bot failure 2016-09-28 15:16:25 +02:00
Behdad Esfahbod
7740a5fe74 Merge pull request #677 from fonttools/opentype-gx
Merge Opentype Variation Fonts (previously known as OpenType GX)
2016-09-28 13:18:50 +01:00
Cosimo Lupo
4fbb8fe757 Merge pull request #678 from moyogo/fonttools-dev
appveyor, travis: use fonttools-dev@googlegroups.com
2016-09-27 21:34:22 +01:00
moyogo
27a99b8d56 README: fix up name 2016-09-27 21:10:05 +01:00
moyogo
331c97e42a README: mention fonttools-dev 2016-09-27 21:09:47 +01:00
moyogo
fbbc344556 appveyor, travis: use fonttools-dev@googlegroups.com 2016-09-27 20:52:09 +01:00
Cosimo Lupo
969b68ec2b [setup.py] fix url so PyPI shows the new project homepage 2016-09-27 19:34:43 +01:00
Behdad Esfahbod
3ec06df194 Fix failing tests 2016-09-27 19:53:58 +02:00
ReadRoberts
5b479716bc Fix bugs in cffLib.py. 1) In the last commit, I added logic to use a CFF predefined charset when possible. This is not allowed In CID fonts. Added a test to NOT do this when font is CD. 2) Added exception handler when reading FontDict XML to skip unknown fields. In previous versions, all the default key/value pairs for the TopDict were (incorrectly) written to FDArray FontDicts. New logic does not do that, but also should not fail when it sees any of these key/value pairs. 3) Changed the expected txt files for some of the subset tests. For the CID example, this meant removing the unnecessary key/value pairs from the FDArray FontDicts. For all, it meant adding the major.minor CFF version fields. 2016-09-27 19:49:41 +02:00
ReadRoberts
99394d90bb Fix bug in processing charset info. When predefined charset is specified in an OTF CFF ( TopDict.charset < 2),, the charset was always filled with the entire predefined charset, instead of charset[:nGlyphs]. Also added logic to write a predefined charset code instead of a custom charset when that is possible: this was not happening before. 2016-09-27 19:49:41 +02:00
ReadRoberts
1677c9e33d Add unit test file for CFF. Uses a small test font to decompile from the data to XML, and back to the data. 2016-09-27 19:49:41 +02:00
ReadRoberts
edbee6e4cb Write major/minor fields to XML. Now that we have CFF2, it is worth being explicit about this 2016-09-27 19:49:41 +02:00
ReadRoberts
3063def35b Fixed writing FDArray FontDict structures for CID-keyed CFF fonts. Old logic was reading/writing using TopDict methods, and items like the CIDFontName and Encoding were getting written to XML, and back into the compiled FontDict data. Fixed by defining a list of operators supported in FontDict objects, which is a subset of the TopDict operators, and referencing these in the FontDict object methods. 2016-09-27 19:49:41 +02:00
ReadRoberts
8dc4edceda Fix bug in writing an empty INDEX table. This is supposed to contain only the two-bye count field. Code was also writing the final sentinel offset in the offset list, even though there were no items. This is harmless, but adds a couple useless bytes. Also fixed the calculation of the offset size in the CFF header. Again harmless, since this value isn't used anywhere, but makes it harder to compare CFF's built by different tools. 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
fb22f64ab1 [varLib] Add TODO item 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
e8117f6443 [varLib] Merge same-structured kerning lookups
Code from Read Roberts.
2016-09-27 19:49:41 +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
caa353d5dd [varStore] Generate variation for Anchors and store in GDEF
Finally!  Phew...
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
cfd7bfbb2c [varLib] Start creating variations for GPOS using Merger 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
8e46c6a121 [varLib] Err if gvar tuples have unknown location axes 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
60e8bab524 [varLib] Unbreak gvar generation
Was completely broken by 15dd7181b47b8c8225b6054c6bb257fab91eea1c as master location
tags were mismatched with fvar.  Too bad gvar was silently ignoring that.  Fix coming.
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
e713f75930 [varLib] Add gvar only if base font has glyf table 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
0546a4296b [varLib] Fix typo 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
ecce5cf344 [varLib] Minor 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
9ea16fc0eb [verLib] Add a proper Merger class in varLib.merger 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
cdc6035fdf Add varLib.merger 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
1bb7605973 [varLib] Remove unused code 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
a30b6250cb . 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
0c577bb7da [ot] Add support for long counts 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
846d969209 [varLib] Remove unused VarAxisID 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
ae93928275 [varLib] Rename fields in fvar, to accommodate for postscriptNameID 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
8e675db59b [varLib] Fix loading of designspace instances 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
24346aaa88 [varLib] Store name entries with Windows English encoding instead of MacRoman 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
4e5145ac41 [varLib] Move code around 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
d916e18595 [varLib] Refactor main() code into build() 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
12867eb7f1 [varLib] Fix buildVarRegionList() for item name changes 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
5029bb96d0 [varLib] Allow items=None passed to buildVarData() 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
f6e1d1b7c2 [varLib] Remove removed Reserved item from VarStore 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
5419e38cde [varLib] Implement merge recursion and anchor interpolation 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
26ef831edb [varLib] Add temporary file interpolate-layout.py
Just here while implementing GPOS / GSUB merging and then figure
out where the code should live.
2016-09-27 19:49:41 +02:00
Behdad Esfahbod
9ed319d0ad [varLib] Clamp values in normalizeLocation() 2016-09-27 19:49:41 +02:00
Behdad Esfahbod
06b1840866 [varLib] Move code around 2016-09-27 19:49:41 +02:00