1883 Commits

Author SHA1 Message Date
Sascha Brawer
08fa0f14dd [otlLib] Move building of MarkArrays from feaLib to otlLib 2016-01-21 16:23:55 +01:00
Sascha Brawer
f09de4277d [otlLib] Make otlLib compliant with PEP8 2016-01-21 15:23:41 +01:00
Sascha Brawer
f42d312580 [otlLib] Move building of ComponentRecords from feaLib to otlLib 2016-01-21 15:16:55 +01:00
Sascha Brawer
15ca8bb0a0 [otlLib] Move building of Mark2Records from feaLib to otlLib 2016-01-21 13:08:16 +01:00
Sascha Brawer
b07d168c0e [feaLib] Simplify how MarkArrays are built 2016-01-21 11:39:34 +01:00
Sascha Brawer
a4318a38c1 [otlLib] Build MarkRecords 2016-01-21 11:29:32 +01:00
Sascha Brawer
3c65e82307 [otlLib] Move building of otTables.Lookup from feaLib to otlLib 2016-01-20 19:25:41 +01:00
justvanrossum
56f863564e added GlyphCoordinatest().toInt() method; made compileCoordinates() actually work with float coords. 2016-01-20 19:23:16 +01:00
Sascha Brawer
51ec0bf5cc [otlLib] Move building of MarkGlyphSetsDef table from feaLib to otlLib 2016-01-20 11:28:33 +01:00
Sascha Brawer
3eacada029 [otlLib] Move building of LigCaretLists from feaLib to otlLib 2016-01-20 09:49:09 +01:00
Sascha Brawer
939b03fbea [otlLib] Move building of LigGlyphs from feaLib to otlLib 2016-01-20 09:16:31 +01:00
Sascha Brawer
bfff7b4e86 [otlLib] Move building of CaretValues from feaLib to otlLib 2016-01-20 08:23:42 +01:00
Sascha Brawer
1bb757ee3c [otlLib] Return None for empty argument to buildAttachList()
This simplifies call sites when building GDEF tables.
Also, publicly expose the buildAttachPoint() function.

https://github.com/behdad/fonttools/issues/468#issuecomment-173006650
2016-01-19 23:25:47 +01:00
Sascha Brawer
d1fd788af9 [otlLib] Build AttachLists in otlLib instead of feaLib 2016-01-19 22:38:23 +01:00
Sascha Brawer
f9f951d2ae [otlLib] Do not emit empty <Value/> elements for empty ValueRecords
No changes in the compiled binary representation, this just affects XML.
After this change, the XML for empty ValueRecords is identical to the
output from makeotf.

https://github.com/behdad/fonttools/issues/471
2016-01-19 22:01:30 +01:00
Behdad Esfahbod
4fd3b2c4ca [mtiLib] Implement forward references
This makes mtiLib feature complete.  Next step would be to add tests.
2016-01-19 18:51:11 +01:00
Behdad Esfahbod
057c4faa33 [mtiLib] Shuffle 2016-01-19 18:51:02 +01:00
Sascha Brawer
d39f22668e [feaLib] Emit ValueRecords even if their ValueFormat is zero
https://github.com/behdad/fonttools/issues/471
2016-01-19 17:07:08 +01:00
Sascha Brawer
35cc4b886d [otlLib] Minor: Use variable names that are less confusing 2016-01-19 16:54:52 +01:00
Sascha Brawer
ed4c93514c [otlLib] Test what otlLib.buildSinglePos() does with empty values
Context: https://github.com/behdad/fonttools/issues/471

This test helps to isolate the problem. Now we know that it is
in feaLib while otlLib behaves correctly.
2016-01-19 16:49:54 +01:00
Sascha Brawer
32a6754fd7 [feaLib] Use otlLib for generating SinglePos tables
See https://github.com/behdad/fonttools/issues/471 for the change
to ValueRecords whose ValueFormat is zero; this may indicate a problem
in otlLib that needs to be fixed.

Resolves https://github.com/behdad/fonttools/issues/472.
2016-01-19 16:27:45 +01:00
Sascha Brawer
ce7cc432f2 [otlLib] Implement otlLib.getSinglePosSubtable()
https://github.com/behdad/fonttools/issues/468
2016-01-19 15:40:19 +01:00
Cosimo Lupo
6ea91c9e7a Merge pull request #470 from anthrotype/namerecord-tostr
_n_a_m_e: add toStr method to NameRecord
2016-01-19 13:30:54 +00:00
Sascha Brawer
6c7776683e [otlLib] Implement buildSinglePos() 2016-01-19 14:22:28 +01:00
Cosimo Lupo
be489d07a6 _n_a_m_e: make NameRecord.__str__ call toStr with errors='backslashreplace'
the Python docs say that the return value of `__str__` must be a "string" object -- which means bytes in Python 2 and unicode in Python 3. Previously, str(namerecord) would always call 'toUnicode' method, even on Python 2.

https://docs.python.org/2/reference/datamodel.html#object.__str__

https://docs.python.org/3/reference/datamodel.html#object.__str__
2016-01-19 13:20:36 +00:00
Cosimo Lupo
818dd6ce1e _n_a_m_e: add toStr method to NameRecord
as discussed in https://github.com/typesupply/compositor/pull/10
2016-01-19 12:31:46 +00:00
Behdad Esfahbod
ba90369af9 [mtiLib] Port CursivePos to otlLib.builder 2016-01-18 12:32:07 +01:00
Behdad Esfahbod
305b8eaae3 [otlLib] Minor 2016-01-18 12:32:01 +01:00
Behdad Esfahbod
1ddfcee5a1 Minor simplification 2016-01-15 22:25:49 +01:00
Sascha Brawer
049fd4bd8f [otlLib] Move CursivePos building from feaLib to otlLib 2016-01-14 17:54:47 +01:00
Sascha Brawer
3968aaa71b [feaLib] Make invocation of otlLib less verbose 2016-01-14 17:15:52 +01:00
Sascha Brawer
9612ef1a22 [otlLib] Move buildCoverage from feaLib to otlLib 2016-01-14 17:10:45 +01:00
Sascha Brawer
0f8882bcc3 [otlLib] Move creation of ValueRecords from feaLib to otlLib 2016-01-14 16:27:04 +01:00
Cosimo Lupo
5856bf90d2 Merge pull request #362 from anthrotype/unicodedata2
[unicode] attempt to import `unicodedata2` backport module
2016-01-14 15:17:57 +00:00
Cosimo Lupo
a99b588a4f Merge pull request #451 from anthrotype/bounds-pen
add "ignoreSinglePoints" argument to bounds pen
2016-01-14 15:14:40 +00:00
Behdad Esfahbod
65dafa3c01 [otlLib] Fix badaf94691cd16ae5b801896d2c56a044d88c3d4
Ugh.
2016-01-14 15:06:59 +00:00
Behdad Esfahbod
badaf94691 [otlLib] Sanity-check buildAnchor() input 2016-01-14 14:59:10 +00:00
Behdad Esfahbod
8a17e925bf Revert "[ot] Deprecate, and add properties for, count values"
This reverts commit d8803873f6d4efbcb227867fe0ac6bca370597bc.

The commit wasn't fully correct as it was not installing properties
for counts in format-switching subtables.
2016-01-14 12:55:42 +00:00
Behdad Esfahbod
d8803873f6 [ot] Deprecate, and add properties for, count values
Part of fixing https://github.com/behdad/fonttools/issues/447

Our own modules still set the counts.  Will fix in subsequent
commits.
2016-01-14 12:33:09 +00:00
Behdad Esfahbod
79953e9912 [otlLib] Fix build 2016-01-14 12:32:32 +00:00
Behdad Esfahbod
d7ca50a624 Minor 2016-01-14 12:28:32 +00:00
Behdad Esfahbod
5ea2acad56 [otlLib] "Hide" internal function 2016-01-14 12:27:39 +00:00
Behdad Esfahbod
9727318680 [mtiLib] Writing to XML works after e0d27461bea131518733b4f05ef3068d5a6ecc91 2016-01-14 12:10:38 +00:00
Sascha Brawer
18297eb591 [otlLib] Move buildAnchor from feaLib to otlLib 2016-01-14 13:08:26 +01:00
Sascha Brawer
0c001da24a [otlLib] Add tests for buildDevice() 2016-01-14 12:24:37 +01:00
Sascha Brawer
d2f9fa8a39 [feaLib] Simplify how ClassDef tables are built
In f0eb7e98ca0642f17ac82433db8c957fffd6a9d3, the various subclasses
of otTables.ClassDef were merged into one single class. Therefore,
we can now always instantiate otTables.ClassDef() which is simpler.
2016-01-14 11:56:57 +01:00
Sascha Brawer
bf29ec9555 [otlLib] Move the building of Device tables from feaLib to otlLib 2016-01-14 11:48:17 +01:00
Behdad Esfahbod
6851f66d18 [ot] Instead of deleting unnecessary Format, set it to None
Fixes https://github.com/typesupply/compositor/issues/7
2016-01-14 10:47:48 +00:00
Sascha Brawer
78092ba783 [feaLib] Do not set otTables.AlternateSubst.Format 2016-01-14 11:30:46 +01:00
Sascha Brawer
e60b939088 [feaLib] Simplify how coverage tables are built
In f0eb7e98ca0642f17ac82433db8c957fffd6a9d3, the various subclasses
of otTables.Coverage were merged into one single class. Therefore,
we can now always instantiate otTables.Coverage() which is simpler.
2016-01-14 11:17:56 +01:00