2545f16b54Make a hidden feature accessible: optionally ignore decompilation errors, falling back to DefaultTable, retaining the binary data. It's a bit dangerous to enable this by default, since it can lead to hiding other errors or bugs (in the font or fonttools itself).
jvr
2008-03-01 09:30:17 +00:00
2db352c748- skip subtables of length zero - minor tweak in cmap 4 logic contributed by rroberts
jvr
2008-02-29 14:43:49 +00:00
a1c092af26_processMathOne does not need factor processing. Copy/paste error.
Erik van Blokland
2008-02-26 09:33:18 +00:00
380513b3c2Fixes a traceback in FL when importing a UFO without hints.
Erik van Blokland
2008-02-25 14:53:25 +00:00
6ce7a4c64bCheck if the psHints are None before processing.
Erik van Blokland
2008-02-25 14:37:20 +00:00
72dc3fecaeAdd test for glyph.copy() and font.insertGlyph()
Erik van Blokland
2008-02-25 13:25:00 +00:00
bee4e0c152Fix
Erik van Blokland
2008-02-25 13:22:11 +00:00
e9a403fec1PostScriptGlyphHintValues reads from data argument if there is one.
Erik van Blokland
2008-02-25 12:55:29 +00:00
5d3393baabAdd a clear() method to the psHint base object.
Erik van Blokland
2008-02-25 12:52:26 +00:00
92f1b1c979New argument for writeUFO: doHints if the glyph hints need to be exported. Default set to False. New argument for readUFO: doHints: if the hints need to be imported. Defaults set to True. font._supportHints is set to True so at least internally hints are supported.
Erik van Blokland
2008-02-25 12:51:13 +00:00
47e7af1af8This adds support for glyph.psHints in objectsFL.RGlyph. The psHints object is in this case a wrapper for FontLab's glyph hint objects. Hints are represented as simple [position, width] pairs, but they're converted to FL Hint objects when writing back to the font. Some changes to the way the hints are written to the font.lib upon export to UFO: hints used to be written as a list of {"position":100, "width":20} dicts. This is now just a list of lists [[100, 20], ]. The names of the entries now match the robofabInterCapSpellingRule, so hHint and vHint rather than hhint and vhint. This also applies to hLink, vLink and replaceTable.
Erik van Blokland
2008-02-25 11:35:12 +00:00
119c1534baThis adds support for glyph.psHints in objectsRF.RGlyph. Read from glyph.lib if present. Write to glyph.lib if not empty. It stores in the .glif through the glyph.lib.
Erik van Blokland
2008-02-25 11:28:46 +00:00
89a3dcd1a6psHint object for glyphs. Support for math. Support for (x,y) factors for multiplication and division. Math operations on glyph take psHints into account. Refer to robofab/test/test_psHints.py
Erik van Blokland
2008-02-25 11:26:38 +00:00
bb9b773615Test data. Same as the test data from earlier releases. It had not been committed into svn.
Erik van Blokland
2008-02-25 11:23:57 +00:00
8893f73410doc test for the psHints attributes of glyph and font. Various math operations ad tests.
Erik van Blokland
2008-02-25 11:22:03 +00:00
c52a8690abobjectsRF.RFont object now makes an empty PostScriptFontHintValues object when initialised. psHints data is always saved to UFO, not just when font._supportHints is on.
Erik van Blokland
2008-02-24 11:40:36 +00:00
9b132cd124Div rather than mul.
Erik van Blokland
2008-02-23 21:22:40 +00:00
10b720b45dThis implements add, sub, mul, rmul, div and rdiv for psHints. With a tip of the hat to Tal's fontMath for some ideas. This also includes a round() method which does some appropriate rounding and integerifying of the zone and stems.
Erik van Blokland
2008-02-23 19:44:09 +00:00
a1d2ca7469psHints, allow initialisation of the object with data.
Erik van Blokland
2008-02-23 19:40:49 +00:00
afe98e771eReimplements the maximum items for the bluesvalues. New copy() method fo the FL flavored psHints object.
Erik van Blokland
2008-02-23 19:40:07 +00:00
026f9d336fRather than a list of tuples, the zone information is now returned and accepted as a list of lists. It won't make any difference in the way the data is handled, but it makes it possible to compare results in FL with results from UFO. (the pairs are stored as lists in the UFO, not tuples). Two internal method names are updated as well as they're no longer making tuples.
Erik van Blokland
2008-02-23 13:22:35 +00:00
0192232fbeFix: if a psHintValues object is initialised without a parent, it should not try to load the lib.
Erik van Blokland
2008-02-23 13:17:21 +00:00
fdae4fcb4bRepresent blues values as lists of tuples rather than a list of integers. Represent forceBold as a Bool. Do some sorting on blues values.
Erik van Blokland
2008-02-22 10:12:19 +00:00
20aadad26cScript with examples of the new RFont.psHints attribute. Setting and getting values.
Erik van Blokland
2008-02-22 10:09:52 +00:00
a8d74c1c88GlyphHints thingy doesn't exist yet, so can't be imported.
Erik van Blokland
2008-02-22 08:40:00 +00:00
a0f4ff8ba7Support for font level postscript hints, mirroring the support in objectsFL. RFont.psHints attribute gives access to blues values and stems and so on. This is just a simple representation of the data that's already in the UFO. This object should actually do some sanity checking of the entered values, keep them to their allowed maximum number of entries and sort them. Also, it would be nice if the zones could respond to math operations. But that's a different project.
Erik van Blokland
2008-02-21 17:42:34 +00:00
1015f090d4Support for font level postscript hints. RFont.psHints attribute gives access to blues values and stems and so on. When exporting to UFO, font._supportHints needs to be True. When exporting to UFO, font level hint data is stored in the font.lib under key "org.robofab.postScriptHintData". Glyph level hint data is stored in the .glif, also under key "org.robofab.postScriptHintData". Note that glyph hints were stored under a different key before. Note, these are new features and still require some testing. The rest of the objects should not be affected by this.
Erik van Blokland
2008-02-21 17:37:39 +00:00
5a8c896278Base object for font level postscript hint data such as the blue values and stems. See RF and FL modules for actual implementation.
Erik van Blokland
2008-02-21 17:17:22 +00:00
e940853ff2When a font was saved to a new location, the kerning did not copy in some cases. This forces the kerning to always copy when a save as happens.
Erik van Blokland
2008-02-21 16:56:53 +00:00
702d133861A fix for ticket http://code.robofab.com/ticket/2 When the feature order is present, it does not mean the features are still in tact, they might have been edited by an earlier version of robofab. Now it checks if a feature is present before adding it to the list of things to add.
Erik van Blokland
2008-02-21 07:46:17 +00:00
8633195104fixed problem with private VTT table, found by Peter Bilak
jvr
2008-02-19 18:49:14 +00:00
c0e527a2a1Remove unnecessary print statement.
Erik van Blokland
2008-02-05 10:04:25 +00:00
6a3236b291This fixes glyph rotation around an arbitrary center point. The return-to-base translation was missing.
Erik van Blokland
2008-02-05 09:46:47 +00:00
3069538f34Removes unnecessary print statement.
Erik van Blokland
2008-02-04 20:09:55 +00:00
2b446bb01cos.name on mac can also be "posix". This caused a problem with FLS 5 on OSX, which would then return glyph.note as latin-1 rather than macroman, which would cause the wrong string to be written in UFO. Tip of the hat to Kai Bernau for reporting.
Erik van Blokland
2008-02-02 12:40:17 +00:00
0045ab5862Change to writing the glyph.note. Strings are encoded as utf-8 before handing them to the xmlwriter.
Erik van Blokland
2008-02-02 12:37:51 +00:00
67584d842dWoops, missed a version number
pabs3
2008-01-28 07:09:27 +00:00
043d41f2c6Add a MANIFEST file so that we don't forget files in the source distribution
pabs3
2008-01-28 04:59:14 +00:00
af37f54e52Update the changelog from the CVS history
pabs3
2008-01-28 04:22:26 +00:00
d80c13e389Get ready to release version 2.1
pabs3
2008-01-28 04:19:40 +00:00
fb8e53bfcfJust use fonttools as the tarball name.
pabs3
2008-01-28 04:00:14 +00:00
cd92c4599bChange to the way the transformation tuple of a component is added to the digest. Values which can be ints (int(a) == a) are added as int, rather than float. This solves a problem comparing digests in UFO and VFB.
Erik van Blokland
2008-01-22 11:28:22 +00:00
d7fca1c1e5Added >>> for the benefit of the doctests.
Erik van Blokland
2008-01-19 12:09:29 +00:00
fda0359bb3Contributed script by Antonio Cavedoni. Tokenize FontLab’s preview/metrics text into single characters respecting escaped glyph names (eg. “/A.smcp”) and providing a lossless reverse function.
Erik van Blokland
2008-01-17 06:20:03 +00:00
36bff8e8ffA place for contributed scripts.
Erik van Blokland
2008-01-16 08:15:51 +00:00
617945dcf1The scripts folder for FontLab as they shipped with Fab 1.1.1.
Erik van Blokland
2008-01-16 08:14:00 +00:00
a80c6d2c8aSome URLs in the code have been updated. Some old crud removed. Install.py moved to the right directory, it was initially checked into the wrong place.
Erik van Blokland
2008-01-09 08:53:25 +00:00
2f35645fbeOdd stray misplaced character. Sorry.
Erik van Blokland
2008-01-08 20:23:26 +00:00
03fa850d2cThis removes the class magic based AllFonts. The AllFonts available in FL relies on actual font indices of open fonts. In RF, AllFonts will raise a NonImplementedError. The class should not be responsible for knowing which fonts are open, it's really up to the application to keep track of these things.
Erik van Blokland
2008-01-08 19:18:06 +00:00
df38921713Removes a couple of prints.
Erik van Blokland
2008-01-08 19:16:31 +00:00
4fc6c418e3Dummy AllFonts function added which will raise a NonImplementedError. AllFonts really only works in FL. This removes some bad magic which never really did work.
Erik van Blokland
2008-01-08 19:14:51 +00:00
b4e57dc4e0Removing getAllFonts() from objectsBase. It's unreliable and tries to implement something in RF which can't really be implemented.
Erik van Blokland
2008-01-08 19:13:43 +00:00
d7b493a3ccinitial import was at the wrong place
Erik van Blokland
2008-01-08 18:41:55 +00:00
f570f123falicense for robofab
Erik van Blokland
2008-01-08 10:55:20 +00:00
fe3133926aUpped the version number to 1.1.2 so there is no confusing with the installer-release 1.1.1. The svn version has a couple of changes already.
Erik van Blokland
2008-01-08 07:21:03 +00:00
93f57733fcBasic fab objects for use in FontForge. Not at all ready, but functional in parts.
Erik van Blokland
2008-01-07 21:12:34 +00:00
3ce28a5c17All the changes that sat around. Some fixes involving FontIndex. A fix for weightValue not accepting floats. An addition for feature exports and imports: it now stores the order in which the features are stored in fontlab. While this works for evb, note there might be conflicts with the changes in your own personal objectsFL.
Erik van Blokland
2008-01-07 21:05:52 +00:00
e397d6495emore cleaning
Erik van Blokland
2008-01-07 20:36:45 +00:00
6afe101a71more cleaning
Erik van Blokland
2008-01-07 20:36:03 +00:00
713ce3b9f2more cleaning
Erik van Blokland
2008-01-07 20:34:31 +00:00
b6f7c1c1b9more cleaning
Erik van Blokland
2008-01-07 20:29:56 +00:00
05819ef629more cleaning
Erik van Blokland
2008-01-07 20:27:40 +00:00
10c63c548emore cleaning
Erik van Blokland
2008-01-07 20:25:28 +00:00
13cd62a0f1more cleaning
Erik van Blokland
2008-01-07 20:19:18 +00:00
79e668f9e2more cleaning
Erik van Blokland
2008-01-07 20:15:29 +00:00
f5a6541439removing old CVS dir
Erik van Blokland
2008-01-07 20:14:25 +00:00
3646055ea2initial import
Erik van Blokland
2008-01-07 17:40:34 +00:00
9728601b44Fix 1762552: traceback on amd64 with DejaVuSans.ttf
pabs3
2007-11-14 07:06:39 +00:00
4acb76de2eadded 'support' for OS/2 version 4: can anyone verify this is correct? I can't seem to find an OS/2 v4 spec...
jvr
2007-10-22 09:31:02 +00:00
26a46b7fcePatch #1296028 from Tomasz Wegrzanowski: improve performance with CJK fonts
pabs3
2007-08-25 06:19:37 +00:00
823f8cd15fMisc patches from rroberts:
jvr
2006-10-21 14:12:38 +00:00
d299b55d14patches from rroberts:
jvr
2006-10-21 13:54:30 +00:00
c60a44fa03Some edits from rroberts: # 1) speed optimizations # 2) fixed parseCharset0 to support CFF-CID fonts. # 3) fixed CharsetConverter.read to work a font that actually has one of the pre-canned encodings. # This fixes a stack dump. # I did not try to support using these encodings when writing a font, # as the cases will be so rare as to not justify the processing overhead for all other fonts.
jvr
2006-10-21 13:41:18 +00:00
bc6e55b31eSpeed optimizations from rroberts
jvr
2006-10-21 13:29:47 +00:00
4cc0051c08Some non-official OT tables from rrboerts. He wrote:
jvr
2006-10-21 13:27:25 +00:00
192655c661make this module work with semi-recent MacPython
jvr
2006-10-21 13:16:51 +00:00
7099f4c0f9support the deprecated dotsection T2 operator
jvr
2006-02-25 21:39:33 +00:00
3a3721cb1cIn some bad fonts, kern table is incomplete (it only contains a version number). In this case, the code accept a table without kernTables.
fcoiffie
2006-01-25 15:24:37 +00:00
dc66e7e118LTSH length can be different of numGlyphs as the table length must be 4-bytes aligned (assertion changed to (len(data) % numGlyphs) < 4)
fcoiffie
2006-01-25 15:21:22 +00:00
83f069d66cThe dates are stored in 8-bytes fields (Microsoft reference document) but Macintosh dates are only coded with 4-bytes. In some fonts, these date fields are badly coded and 8-bytes are used. So, a ValueError occurs.
fcoiffie
2006-01-25 15:12:14 +00:00
04985bfddeUnsigned long data field must be packed with "L" instead of "l" (sometimes an OverflowError can occur)
fcoiffie
2006-01-12 14:04:40 +00:00
e895dce25dHmm, fondLib has been broken on Python.framework for a while: I used the native struct alignment, which is different on OSX. Changed all struct calls to explicitly use big endian (ready for x86...), which also fixes the alignment issue.
jvr
2005-06-24 09:35:16 +00:00
d4561ec1b4some flex hint fixes from rroberts
jvr
2005-05-07 08:41:12 +00:00
a5c92986ddavoid glyphSet.get(): not all glyphsets in use implement it.
jvr
2005-04-10 13:18:42 +00:00
2e4cc02ca3BasePen should not fail if a base glyph does not exist in the glyph set; added get() method to _TTGlyphSet class
jvr
2005-03-08 09:50:56 +00:00
3a98ae5bafadded _endPath method; without it, we'd fail on open paths (which requires pen.endPath() to be called instead of pen.closePath())
jvr
2005-03-08 09:40:25 +00:00
c53569efefuse highly unscientific epsilon value
jvr
2005-02-25 22:31:39 +00:00
0ec07f2dbcshow/test that _testrepr() reprs Numeric arrays nicely, too
jvr
2005-02-25 10:47:36 +00:00
82fdf153acadded a comment
jvr
2005-02-25 10:42:29 +00:00
befd485af5factored out param -> points conversion
jvr
2005-02-25 10:40:07 +00:00
9369c20087renamed and rewrote _tuplify() to _testrepr(), added tests for splitCubic()
jvr
2005-02-25 10:33:47 +00:00
8ee2561bc1some refactoring, some doctests
jvr
2005-02-25 10:11:30 +00:00
cecd58c31chm, it's been more than a year and a half since I regenerated ChangeLog.txt...
jvr
2005-02-23 22:15:14 +00:00
95c9e9fc11This patch fixes two things - in T2 charstrings, a byte code of 255 is followed by a 16.16 fixed point number, not a 4-byte int as in T1. Noted by rroberts. - some integers were not correctly encoded in the T1 compiler.
jvr
2005-02-23 21:22:27 +00:00
31ae380735fixed problem with empty ClassDef, as well as added some more defenses for possible empty tables
jvr
2005-02-11 19:36:38 +00:00