From: <gw...@si...> - 2007-09-01 16:48:55
|
31-August-2007 * New traditional Chinese translation of the UI by Wei-Lun Chao. * Updated Vietnamese translation by Clytie Siddall. * Removed the old MetaFont command (which didn't work) and replaced it with a styles menu (incorporating the old Effects menu, and a command to change weight, to condense/extend, and to oblique. Added python scripting commands {font,glyph}.{changeWeight,condenseExtend} * Lots of new work on the truetype autoinstructor by Alexej and Michal. * Add a validation dialog which can be run just before generating a font. * Try a different algorithm for approximating splines by line segments (for drawing them in the outline glyph view and elsewhere). This one should show symmetry better. * Provide the ability to ask freetype to rasterize glyphs without hints in the Print/Display dlg (even if the glyphs have hints, rasterize them without). * Oh dear, rasterizing stroked fonts only worked if multilayer was defined. * Try to improve display of stroked fonts. * When stroking splines don't let miter joins grow excessively. * FF would remove instructions from glyphs that had at least two contours the first of which started with a control point. * Add a short cut for Hide Grid in the metrics view. * Python 2.5 initializes itself differently from Python 2.[34]. 2.[34] delay the init until an import happens, while 2.5 does it at start up. I just assumed that when I called Py_Initialize that it did so. This led to a crash on 2.[34] when I tried to use my types before the user had tried to import fontforge. * Further improvements to tile path. * When moving a control point in a ttf font where one side of the cp was a real point, I would allow an implicit point on the far side of the real point to become real. * When dragging truetype points around, adjacent implicit points would remain where they were (and not be implicit any longer). * FF would randomly crash after removing a lot of glyphs. * The knife tool would not cut a contour if it landed on a point. * Trying to add a stylename to the size pane of fontinfo generally caused a crash. * All blank lines in the display dlg had the same line spacing as that of the first character displayed in the dlg. * I don't think feature files where handling classes defined with '-' properly. * Read the "lib" structures from UFO/GLIF files into our python persistant data. (And write our persistant data out if it's a dict). * Add the ability to call hooks (python functions) when various fontforge events take place. * Make fontforge's basic types (Point, Contour, and Layer) be picklable so they can now be saved in an sfd file. * Oops. With the inclusion of the library check argument, ff would not compile if NODYNAMIC were set. * FontForge now stores the "userdata" python members into the sfd file as pickled objects. (FontForge's own types are not currently pickleable). * Add the ability to mark a glyph so that just before being saved its references will be unlinked and we will run remove overlap on it. This means the user can work with the references (and get the automatic updating they confer) and still not have a self-intersecting glyph in the output (think Aring, Ccedilla, Eogonek). * Create a fontlint script file. * When dumping both apple and opentype bitmap tables if there were a BDF table, then we'd get garbage for 'bloc'/'bhed'. * Add some user interface commands to python, and more importantly, add the ability to create menu items which will invoke python scripts, and the ability to add import/export conversion filters (again, python scripts). * Counter hints for LCG glyphs came out wrong if autohint had not been applied first. * Counter masks were not read out of sfd files properly. * Selecting a counter mask in Glyph Info caused FF to crash. * The Execute Script dlg would sometimes complain about invalid scrollbar size when it got closed. * AddAnchorPoint (scripting command) should be prepared to cast real args to integers. * Just as I needed a special "in use" pass of GSUB when reading from a TTC, so I also need an "in use" pass of the MATH table. * All this time and I've mapped "nonmarkingreturn" (GID=2) to Unicode+000C instead of Unicode+000D. I'm a twit. |