Current changes
Changes to PfaEdit (predecessor to
FontForge)
-
31-Dec-2004
-
Ah, windows pfm files expect the metrics to be output in win latin encoding
order, not in the encoding defined by the pfb file. (Actually there are other
posibilities for encoding, but as none is documented, I must ignore them).
-
ReplaceWithReference broke at some point
-
Add an argument-pair to the ReplaceWithReference() scripting command to allow
the user to specify the amount of error that will be accepted.
-
When generating a Type1 font, if a glyph had a single reference to a glyph
not in adobe encoding, and that glyph itself had a single reference (in adobe
enc) and some splines, then ff would make a reference to the ref in adobe
enc and ignore the splines.
-
Upgrade to Adobe-Japan1-6
-
Various fixes to svg output
-
export glyph to svg didn't work
-
multilayered generation had problems
-
Ghost hints could get outside a glyphs bounding box in a type2 font.
-
The generated truetype unique id string had an off by one error in the month
-
Add support for dashed lines in multilayered mode
-
In Full Page Glyph printing, the glyph was offset slightly from where it
should have been.
-
Pasting a reference into a multi-layered font produced a very odd layer
-
ff didn't update the metrics view if the user pasted the selection with the
middle mouse button.
-
if a character were not in the current encoding then ff would not display
it in the metrics view (even if it were in the font)
-
Make the behavior of control points at the ends of open paths more reasonable.
-
The Point->Curve command did not adust control points correctly.
-
The View->Display Substitutions had numerous problems.
-
Fix several problems from unicode unification of accents. Many characters
which are said to be based on cedilla actually use a comma, other characters
said to be carons also use comma. Make the n-with-apostrophe character be
treated as an accented letter.
-
Werner points out that straight lines should generally not be simplified
(as they will no longer be straight afterwards). Add this knowledge to the
simplify command.
-
18-Dec-2004
-
Added a raster debugger wndow
-
Each time debugger starts, remember what debug windows were open last time
it was used.
-
Constraining the pen tool did not do what I expected
-
If a glyph was encoded twice (or more) in a font, and an opentype font (or
perhaps a bitmap only sfnt) were generated, then any glyphs after the second
encoding would have the wrong width (ie. there would be an extra entry in
the horizontal metrics table corresponding to a (non-existant) copy of the
doubly encoded glyph)
-
If a type1 font never defined .notdef but used it at least twice it the Encoding
vector, then ff would crash.
-
Updated Japanese UI (by KANOU)
-
Werner found some crashes related to calling isalnum (etc.) using an index
outside of bmp.
-
More changes (I hope improvements) to remove overlap
-
13-Dec-2004
-
Some fixes to the raster display of the debug window
-
Conversion of cubic to quadratic had a rounding error introduced by -O2.
Made it a bit more forgiving about rounding errors.
-
Added two new buttons to the point info dialog to allow the user to walk
around the current contour (Normally the Next button skips to the start of
the next contour if you are at the end of the current one, the "Next On Contour"
button returns to the first point on the contour)
-
improve interpretation of some type3 fonts (including those produced by
fontographer 4)
-
patch by Yoshki Hayashi to fix mnemonic crash in layers palette
-
Added a rand() scripting command
-
Support backslash newline to break up lines in a scrpt
-
The internal adobe standard encoding thought it was unicode causing strange
effects
-
Type3 fonts that set colour/grey didn't work
-
Printing at 140pt tried printing 4 glyphs across although there was only
room for 3
-
At install tell pkg-config the verson of fontforge
-
3-Dec-2004
-
If a cff file contained unencoded glyphs then ff would crash when loading
it.
-
When converting from cubic to quadratic splines, ff would sometimes produce
a line when it should have found a spline
-
During debugging of a ttf glyph, show what rasterization would produce if
the current splines were used (highlight pixels which change)
-
The debugger windows didn't always say "<empty>" when they should have.
-
The debugger would often crash the second time we closed its window
-
Asking for the script (as latin, greek, cyrillic...) of ".notdef" caused
us to look at unallocated memory.
-
We weren't labelling control points in the debugger
-
debugger and grid fitter for tt fonts showed curved splines as lines
-
Kerning pairs did not get scaled when changing em-size
-
Add a preference for turning off automatic gotos as the user types in the
glyph window
-
Add a command to the glyph window to toggle between the two most recent glyphs
used in that window (a mini history)
-
Improved the points debugger window to show
-
implied points
-
whether a point is on or off the curve (normal or control)
-
added a scroll bar
-
Provide info on debugging points as mouse moves over them.
-
Fix (an innocuous) reference to unallocated memory
-
Added ability to insert an uninterpreted table into an SFNT
-
New preference item: PreserveTables which lists a comma seperated set of
table tags which are to be loaded from SFNT files without interpretation
(Note if ff thinks it understands a table it will parse it rather than preserving
it)
-
Scripting command LoadTableFromFile("tag ","filename")
-
Scripting command SaveTableToFile("tag ","filename")
-
Scripting command RemovePreservedTable("tag ")
-
Scripting command HasPreservedTable("tag ")
-
22-Nov-2004
-
Kevin Schoedel suggests a new scripting command DrawsSomething()
-
Kevin Schoedel requests that PrintFont be able to print a string sample (as
opposed to a sample file)
-
Kevin Schoedel points out that type1 fonts stuffed into mac resource forks
are to be read in resource order rather than file order (often the two are
the same) and provides a patch to fix this.
-
Change the way the default language/locale is picked in fontinfo->TTF
Names
-
Remember (across invocations) whether palettes should be hidden or not.
-
Ignore NUL chars when reading PostScript strings (PS supports NULs in strings,
I'm not going to bother, but I don't want to parse incorrectly because of
them).
-
ff lost the ability to Select("U+xxxx") or Select("=") from a script.
-
Oops, the routine to read PostScript FontNames from a ttf file was broken
by the encoding change.
-
If a ttf file contained an erroneous composite glyph with flags indicating
more components after the glyph had run out of data, then ff might attempt
to read instructions also and have problems.
-
If a font contains multiple ttf names for a given string in a language then
allow the user to pick which one s/he likes best.
-
Another case where a bad otf table crashes fontforge
-
If a ttf/otf font does not contain a postscript FontName string in the name
table, then ff's attempt to synthesize one out of fullname/familyname did
not check for a valid name.
-
15-Nov-2004
-
12-Nov-2004
-
ff would crash on postscript fonts where the encoding included a glyph name
not defined in CharStrings (probably broken on 12-Oct)
-
More remove overlap work
-
In the glyph window, when the scaled distance between the top and bottom
of the window is less than 1 em-unit, then the vertical ruler was drawn with
the top and bottom labels reversed.
-
sfd files used to have a limit of 1023 characters in ttf 'name' table strings.
-
6-Nov-2004
-
Encoding change broke prefs dialog
-
5-Nov-2004
-
Encoding change didn't work on libiconv systems
-
4-Nov-2004
-
Added a new scripting command: AddAccent() to add an arbetrary accent to
an arbetrary glyph.
-
3-Nov-2004
-
KANOU has a Japanese version
of this reference manual under construction.
-
In MultiLayered mode, the "New Layer" menu item left a dangling pointer which
caused a crash if anyone looked at the background layer.
-
In MultiLayered mode, if one clicked beyond the last layer in the Layers
palette, ff would crash.
-
KANOU provided a patch to fix another crash in the layers palette.
-
KANOU has provided a new Japanese UI.
-
Made an addition to CharInfo() scripting command so user can determine the
horizontal extrema of a glyph at a given vertical position. Similar addition
for vertical extrema at horizontal pos.
-
Add a scripting command (PasteWithOffset) to allow user to apply an offset
when pasting. For building accented letters by hand.
-
KANOU provides a patch to fix a problem in the new encoding stuff.
-
Select(".notdef") usually didn't work.
-
28-Oct-2004
-
Kanou noticed that ISO 15924 has been updated and provide a patch including
new scripts.
-
I have redone the way ff handles encodings internally. We used to depend
on the encodings builtin to gdraw/gunicode. Now we use iconv() (if there
is no iconv, then ff will use a dummy iconv which understands the encodings
of gdraw/gunicode). Encodings are identified by name rather than by number
now.
-
Further fixes to the extremum detector
-
Further fixes to remove overlap
-
Added an extra argument to scripting RoundToInt, so that you can have control
over what it rounds to (ie. round to hundredths, tenths, etc.)
-
Added two new scripting commands NearlyHvCps() and NearlyHvLines() which
look for control points or lines that are nearly horizontal or vertical and
force them to be horizontal or vertical.
-
Kanou provided a patch so that the GRadio.Font resource controls the font
in the layers palette of the glyph view.
-
23-Oct-2004
-
Remove overlap had problems with splines which made abrupt turns (ie. tiny
splines after we found extrema points and divided the spline into bits between
extrema)
-
Remove overlap could munch memory
-
The ruler tool showed all tiny splines as having a length of 0
-
Autorecovery had problems with glyphs containing features (would complain
about sli)
-
KANOU wants to be able to scale greymap fonts
-
removed routines from fvcomposit.c, metricsview.c that were duplicates of
fvfonts.c
-
Oops, the default mac filesystem isn't case concious either, extend the windows
export patch to the mac.
-
Simplify didn't have a very good extremum detector and would sometimes delete
extrema.
-
14-Oct-2004
-
Remove overlap had problems with tiny splines.
-
13-Oct-2004
-
I notice (in Fontes & Codages) that the labels in the metrics view aren't
translatable
-
Fontes & Codages suggests that it would be nice if the glyph labels in
the fontview could be something other than an image of the glyph (glyph name,
unicode code point, encoding, etc.)
-
Change the word "Character" to "Glyph" where appropriate.
-
Move the Open Outline/Bitmap/Metrics commands to the Window menu, and change
"Open" to "New".
-
12-Oct-2004
-
We have a Spanish UI now, courtesy of Walter Echarri. Yeah!
-
Support for loading type3 fonts (that ff produced) was broken. Note: ff is
still unable to load many type3 fonts (any that are filtered, or that use
images for example), but it should be able to read its own fonts.
-
(I hope) minor change to the way .notdef is handled when reading postscript
files.
-
Added support for printing to pdf file
-
(fixed a bug in pdf generation from the export command)
-
Fixed various problems from turning off the multilayer bit in fontinfo
-
KANOU needs a couple more strings disambiguated.
-
Add support for generating type42 and type 11 (type42 cid) fonts, add support
for loading type42 (but I'm not bothering with type11s) and use these guys
when printing order2 fonts.
-
Check to make sure the PostScript Fontname is valid when reading in a truetype
(or svg) font (syntax doesn't enforce this), and if not warn the user and
fix it up.
-
Add some new scripting commands for handling MM fonts since someone seems
to want them.
-
Used to complain if there were more than one Unique Font ID in the truetype
'name' table. (because the OpenType list said there should only be one, else
it would not be unique). But both Apple and MS ship with fonts containing
multiple Unique Font IDs. God knows what that means, or when you pick one
over the other... Anyway I changed my error into a warning.
-
30-Sept-2004
-
I have rewritten Remove Overlap from scratch. I seems less likely to crash,
but I'm not sure that in any other respect it is improved.
-
In the character view the Remove Overlap (and Intersect and Find Intersections)
now only work on selected contours, or, if no contours are selected then
on all contours. This change makes these commands consistant with most other
commands in the character view, but it is a change from past behavior.
-
The Import scripting command has been extended to give the user control over
the stroking flags (correct direction, remove overlap, handle erasers). And
the background flag has been extended a bit to apply to other things than
bitmaps.
-
ff had a pointer dangling to a freed block after loading a font containing
multiple versions of some greek letters.
-
U+1D400-U+1D7FF are stylized variants of the latin and greek alphabets as
used in Mathematics. The font view will now display (in the glyph header)
the proper variant of the glyph (assuming it can find a font with that style).
-
The AMS (American Mathematical Society) has their own interpretation of the
public use area. FF now understands their glyph names as alternates for those
glyphs, and has an AMS interpretation (under FontInfo->Encoding) that
will make ff use those names in new fonts.
-
Many of code points in the AMS PUA are reencodings of other glyphs. FontForge
will automatically generate these reencodings for you.
-
The AMS also describes how some TeX glyph names map to unicode. So include
those names in our alternate list too (so we can map them correctly, not
as a way of encouraging people to use them).
-
Both the AMS defn. of the PUA and the Big5 defn. map characters which are
properly in other unicode planes into the BMP. FF now understands this, and
converting between a BMP encoding and a full unicode encoding will move things
from the PUA to their proper unicode slot in higher planes.
-
Find Problems thought that adjacent splines intersected at their common
end-point. I suppose they do, but it isn't useful information
-
In the char view, I used to blank out the status line when the mouse moved
outside the window. But some of that info is still valid. So only blank out
the meaningless bits.
-
Kanou requests a disambiguation between two strings with the same label in
English but different meanings in Japanese. (Vertical/VerticalWriting)
-
The Point->Make Line command would crash if either of the the two points
was missing a previous or next spline.
-
Pierre HANSER provides a patch to problems.c (it would crash when dealing
with fonts with an encoding with < 32 code points.
-
Pierre HANSER provides a patch to merge fonts (it would crash when merging
bitmap fonts.
-
Closing a charview window with a docked palette could cause a crash if the
cursor was moved quickly into another charview which needed a new cursor.
-
The perspective icon had the wrong background
-
Piska keeps complaining about the way ff handles 0 width strokes. He wants
it to have zero width (disappear, I guess), but PS says it should be stroked
as the thinnest line possible (not clear what this should mean in ff, I interpret
it as a 1em-unit stroke). But METAPOST uses a 0 width stroke in cases where
it wants no stroking (with a fill) so in the special case of a fill with
a 0 width stroke, turn off stroking.
-
Use a different approach to approximating a set of points with fixed slopes
at the end points. Used to do least squares (fixup slopes), least squares
again (fixup slopes). Now I do least squares (fixup slopes), perturb the
lengths of the slope vectors until we find the best fit.
-
I was generating flex hints when I should not have done so. Add a heuristic
so that ff doesn't add flexes to small circles.
-
Failed to read long format pk bitmaps.
-
Patch by Mchael Ghrken to make the Skew scripting command take a
numerator/denominator style argument.
-
24-Aug-2004
-
Oops, didn't get the expand stroke scripting patch quite right
-
Changed the way preferences are handled in
scripts
-
By default preferences are no longer loaded when starting a script.
-
Preferences are not saved in a script unless explicitly requested.
-
Added 2 new scripting functions LoadPrefs() and SavePrefs()
-
Added an environment variable FONTFORGE_LOADPREFS to give the user control
over loading of preferences.
-
Used to have a preference item DumpGlyphMap. Now we have an equivalent flag
in the Generate Fonts [Options] dialog.
-
The SetPanose scripting command didn't work. MURAOKA Taro provides a patch
-
It was not possible to get or set NewCharset preference item with GetPref/SetPref
scripting commands. Now GetPref returns a magic number, which may be used
in SetPref. SetPref will accept either a number or one of the encodings accepted
by Reencode().
-
If you copied a glyph feature from a glyph that didn't have that feature,
and then did a paste ff would crash.
-
Added two new tools to the outline character view. One allows you to rotated
your glyph through 3dimensions (and project it back on the xy plane), the
other allows you to do a perspective transformation.
-
Extended the Transformation dialog to handle 3D rotation+projection. After
all it's just:
cos(y-axis-rotation) |
0 |
0 |
cos(x-axis-rotation) |
-
Add a Point of View dialog to do real perspective projections
-
Remove the FONTFORGE_CONFIG_NONLINEAR flag, and enable the nonlinear dlg
perminantly. I need some of its routines to do the projective projections.
-
There was a path through LoadEncodingFile (in a script) where it would silently
fail.
-
LoadEncodingFile would save default encodings even though it hadn't loaded
them. It no longer does this, but now SavePrefs does it instead.
-
Added the ability to see (and create) simple substitutions in the font view.
-
The embossed box around the fontinfo dlg wasn't always in the right place
-
8-Aug-2004
-
Zhang Lin-bo reports two bugs (which were really three)
-
Expand Stroke failed when given a path consisting of a single point had a
zero length spline returning to itself.
-
AddExtrema falls into an infinite loop if the initial spline of a path needs
an extremum added to it.
-
Expand Stroke generates garbage output in some very obscure conditions.
-
AutoHint crashes when given garbage input.
-
Michael Gährken points out that ExpandStroke scripting command doesn't
work for caligraphic stroking, provides a patch and an extension.
-
KANOU provides a patch for BDFMakeChar in CID keyed fonts.
-
Change the Shades palette in the bitmap view so that it shows what grey level
is underneath the cursor.
-
When the width is huge, then moving it causes it to wrap into negative values.
It should probably stick at SHRT_MAX instead.
-
If one moves to a negative width and releases the mouse, an error message
pops up warning of this. If you move the cursor around the width continued
to change.
-
If one moves to a negative width, and in response to the width warning says
[No] then the width reverted to the wrong value.
-
ff would crash on a postscript sequence containing "{}" if that was the first
function defined.
-
I got the locale wrong for Hong Kong
-
If nothing was selected in the import dlg (or any of the file open dlgs)
and the user pressed [OK], then the directory would be returned.
-
Improved error message for Import dlg.
-
In spanish various dlgs had buttons that were too close together (and similar
problems)
-
01-Aug-2004
-
ff did not generate amfm files correctly
-
Changed the Merge Kern Infor (menu item and scripting command) to
-
support pfm files
-
detect file type from the file header rather than from the extension
-
Added InterpolateFonts as a scripting command
-
Added GetEnv as a scripting command
-
The scripting $fontversion and $copyright psuedo variables broke when I added
the fond name changes.
-
More problems with tfm files.
-
Fixed a couple of problems related to dialog sizing for different languages.
-
In Windows 3.1 some chinese fonts were released with a ttf version of 2 (rather
than 1). Add this to the list of supported TrueType/OpenType versions (see
discussion on freetype mailing list, july 2004 for more info)
-
Added both a menu and scripting command to copy kerning & substitution
info from one glyph to another.
-
FontForge fails to load some svg fonts properly (if they use the "t" directive
within a path => quadratic splines, control point implied, relative to
last point). Result is a nasty scribble.
-
Windows file systems are not case conscious. The file names generated for
Export use glyph names (which are case conscious). So on windows exporting
"a" and "A" will overwrite the same file. (Add a "$" in front of capital
letters to distinguish).
-
We were not scaling refs/images uniformly when we dragged corners. Instead
we changed the sides by the same amount (this works for squares, but nothing
else).
-
XML does not allow backspace as an input character, even when specified by
an entity. This means we can't specify the unicode code point for backspace
in a an svg font (and many ttf fonts contain a blank backspace char, god
only knows why).
-
The Default ATT->Unicode decomposition didn't work.
-
Added a new entry to Default ATT, Caps->Small Caps (and cleaned up lower
case->small caps too).
-
Eschew 0 width hints.
-
Add support for localized unicode glyph names (currently only french is
available)
-
3-July-2004
-
Undoes in the Guide layer caused a crash (introduced with multi-layer)
-
Fixed another problem with subroutine references in type1 output
-
Preserve hhea.ascent/descent and some OS/2 values (no UI for these, but they
are retained)
-
KANOU provided two patches
-
One to set the the average Char Width field of OS/2 properly
-
One to set the 'gasp' table so that Windows would actually use embedded bitmaps
-
Added support (in build accent) to look for upper case and cyrillic variants
of accents (use grave.cap rather than grave, use breve.cyr rather than breve)
when building upper case or cyrillic letters.
-
Points were not being properly renumbered if they were out of order (when
editing in quadratic mode)
-
When a character had a color attached to it, it looked very strange if the
user changed it.
-
Added an "x" to check boxes when checked
-
FF did not realize that tonos should be treated as an accent (it is spacing,
which confused ff)
-
Cleaned up an ancient message in the nomen files. Used to be three seperate
strings, now one with format specs in it.
-
18-June-2004
-
Point types were not set properly after conversion from quadratic to cubic
splines.
-
Several preference items were not being saved and were not accessable from
scripts.
-
Scripts could not set the resolution for bdf fonts
-
Still having problems with references to references in type1 subroutines.
-
AutoTrace had problems with multi-layered mode.
-
Enhance "ItalicConstrained" in the Character View to allow vertical constrains
as well as those parallel to the italic angle.
-
Build Accented Characters had problems when there were bitmap characters
involved.
-
Can no longer blindly rotate splinesets in type2 fonts to avoid an initial
flex.
-
Add three new problems to Find Problems
-
Check for intersecting contours
-
Check for mulitple glyphs with same unicode code point
-
Check for multiple glyphs with same name
-
31-May-2004
-
In the 19-May build I introduced a bug which could generate NaN values for
control points.
-
29-May-2004
-
The MergeKern scripting command didn't have the capabilities of its menu
counterpart.
-
Enhance the pattern matching capabilities on font names when loading kerning
information from a mac FOND (there is no place in the FOND that names the
styles, so best we can do is make reasonable guesses).
-
When editing quadratic fonts (truetype), changing the type of a point to
be a tangent caused the previous control point to be set the to same location
as the next control point. Bleah.
-
New versions of libpng will not automagically load libz when they are loaded.
Needed a patch to load libz manually.
-
Fixed a couple of bugs in contextual / chaining dialog.
-
When reading PostScript arrays FF failed to parse negative numbers properly.
-
Make it an error (which it should be) to create a mac postscript resource
file without also generating an NFNT.
-
Warn that NFNTs don't work under OS/X, warn that POST resources are probably
depreciated.
-
WinAscent/Descent were being saved incorrectly in sfd files, leading to bad
WinAscent/Descent in t/otf OS/2 tables.
-
Crash in ExpandStroke from a NaN when try to intersect parallel lines
-
Improved Merge a little bit for quadratic splines
-
23-May-2004
-
Added popups in the Open Font dialog to show the fontname(s) of any font(s)
in a file.
-
FontForge failed to load background images. A bug introduced 24-Feb (part
of multi-layer)
-
Reordered the which glyph FF would pick when searching for accents. It used
to use ASCII versions of the accents over those in the U+03xx range.
-
20-May-2004
-
Bug in scripting change for mac families.
-
Added a Paste After command (which isn't visible by default) which will allow
you to build up words more easily.
-
19-May-2004
-
Give the user access to the OS/2 fields WinAscent and WinDescent.
-
Add a new command (Points->Make Line) which will turn a spline between
two selected points into a line.
-
Improve the behavior of defaulting control points so we don't get
self-intersecting loops
-
Add a mode to the pointer tool. Holding down the <Alt> key now means
we don't join two open contours if they make contact while dragging.
-
When loading an otf file and saving it as ttf, sometimes the space glyph
would become zero width.
-
Redid the way mac families were output. Should be more flexible under OS/X
-
9-May-2004
-
Several problems with tfm files. Didn't handle tfms with more that 128 lig/kerns.
-
Failed to set the r2l flag properly in 'morx' tables
-
More typos in the ghost hint code
-
Allow users to express error term of the scripting Simplify command as a
fraction.
-
The strings in the context / chaining dlg's initial pane were wrong
-
Fixed some bugs in converting OT contextual substitutions to Mac state machines
-
If we wanted to put a glyph with references into a subroutine (in type1 output)
we failed miserably
-
Added a new command
Edit->ReplaceWithReference (and
a scripting version too), which searches all glyphs in the font for any selected
glyphs, and for each embedded occurance it replaces the outlines of the glyph
with a reference to it. This is because reading a postscript (type2 or type1)
font generally loses all reference information.
-
The documentation for OS/2.winAscent makes no sense. I shall ignore it and
set winAscent to hhea.ascent
-
Sivan says that hebrew kerning is broken again.
-
The search dlg didn't work on quadratic (truetype) fonts
-
2-May-2004
-
I've changed the colour of check boxes because people found black confusing
-
FontForge read Italic Correction incorrectly out of tfm files and had minor
problems generating tfm files.
-
the kern class dlg had an uninitialized variable (introduced with the multiple
master code I think)
-
FontForge would sometimes crash when generating a GDEF table for some types
of otf font.
-
Pierre Hanser has updated the french UI, and pointed out some problems with
the english UI.
-
In a version of FontForge compiled with MultiLayer on, Pasting something
containing a reference screwed up memory
-
25-Apr-2004
-
AutoHint produced ghost hints for curved stems that sometimes were outside
of the character.
-
Fixed some uninitialized variables in MetaFont (but the algorthim is still
flawed)
-
FontForge had problems when the fontview was maximized.
-
The 18-Apr patch for cubic->quadratic conversion had a bug which generally
resulted in a crash.
-
When flickering in and out of compacted mode, during a Generate Fonts, the
encodings in the displayed bitmap could get out of sync with those of the
font leading to a crash.
-
Don't mess with the control points in point type conversion
(corner->curve/tangent) when the they are already reasonable.
-
Allow rectangles and ellipses to have seperate settings of the center out
flag.
-
Add a dialog which allows you to specify exactly where rectangles/ellipses
should go.
-
Double-clicking on the scale/flap/rotate/skew tool brings up the transform
dialog.
-
Add a couple of entries in the transform dlg option menus which copy information
from the last ruler measurement.
-
Give the user control over how long the ruler window hangs around.
-
18-Apr-2004
-
Fix a couple of bugs dealing with references in multilayered editing.
-
Uninitialized variable in creation of 'name' table (introduced on 10-Apr)
-
Edit->Merge didn't work properly on quadratic splines
-
LCarets should have ignored the script assigned to them, but they didn't.
-
Put in more protection against bad GSUB/GPOS tables. In particular mangal.ttf
has a bad GSUB table (with erroneous class specifications).
-
FontForge wasn't setting 'hhea'.caretSlopeRun appropriately in italic
fonts (should match tan(italicAngle)).
-
Oops. Can do much better converting from cubic to quadratic splines. We were
getting far too many linear segments.
-
Our cubic->quadratic conversion could generate splines where the endpoints
were less than 1 unit apart. Since ttf rounds all coords to ints, this meant
we'd get the two endpoints on top of one another.
-
When generating a truetype font from a cubic database, FontForge calculated
'maxp'.maxCompositePoints incorrectly.
-
Gave the user control over when point numbers are visible (even for cubic
fonts)
-
10-Apr-2004
-
The flatten commands didn't preserve the ttf 'name' table nor the 'OS/2'
table
-
Redid the way 'name' table was generated, hopefully we do better for the
mac now.
-
the 'kern' table had a bad rangeShift value (it was the negative of what
it should be)
-
Pasting a reference from one font to another could crash if the destination
font did not have the refered character.
-
".null" was appearing twice in the 'post' table when saving a ttf file a
second time.
-
Markus Schwarzenberg points out that the ScaleToEm() scripting command didn't
work when given a single argument.
-
Pierre Hanser points out that the version fix on 4-Apr had a bug that caused
crashes on Macs (perhaps elsewhere).
-
04-Apr-2004
-
Several more fixes for cff output.
-
We had a bad habit of including extraneous hintmask operators in output
-
Add a proper ff version (well, as much as my versions be proper) to
postscript/svg output
-
Patch from Kanou about reading format 2 bitmaps in a sfnt
-
Patch from Kanou. MS requires a weird format for GSUB in vertical writing.
-
29-Mar-2004
-
When Type1 output needed to output a reference as inline splines (as opposed
to a subroutine call or using a seac command) then it would lose any translation
applied to that reference.
-
Patch to Type3 output from R.L.Horn
-
FontForge used to crash when reading in a bdf glyph with a bad bounding box.
-
Reading a kerning class from an sfd file when that class had more second
character classes than first character classes would screw up memory and
probably cause a crash.
-
Attempting to edit a 'cvt ' table in a font without one caused a crash.
Attempting to edit a 'cvt ' table in a font with one showed an empty table.
-
Make scaling from the fontview apply to kerning and positioning data.
-
Drawing a rectangle by dragging from center out didn't work
-
Display phantom points when debugging. Be prepared to find either 2 (horizontal
metrics) or 4 (both horizontal or vertical) depending on what version of
freetype we've got.
-
Bug in both reading and writing encoding format 0 of cff fonts. I forgot
to ignore .notdef so everything was off by 1.
-
If a glyph was used as a reference in another glyph, and we put it in a
subroutine (type1 output), and it had hint conflicts, then the first group
of hints never got output.
-
In multilayered mode, the Revert Glyph command left memory in a potentially
bad state. (If you immediately closed the charview, then nothing bad would
happen, but if you tried any editing in it, then nasty things happened.)
-
21-Mar-2004
-
When flattening a CID file fontforge lost track of the script/lang list (and
other things) which caused bugs when dealing with substitutions
-
When saving multiply, fontforge could free a fonts hash table several times
-
When flattening by a CMAP file from a script fontforge could crash
-
Added a CIDFlatten command to scripting.
-
The "cleanup of OS/2" on 29-Feb actually broke WinAscent/Descent
-
When loading a mac unicode string from the 'name' table, fontforge failed
to convert the language correctly.
-
When loading a mac contextual substitution statemachine, fontforge made egregious
errors in guessing to what glyphs were usable for a substitution of the marked
glyph.
-
Added the current encoding to the font's window title (also display a flag
to show whether the font has been changed)
-
When moving points around on an order2 contour fontforge could end up with
bad control points and would then produce annoying internal errors alerting
the user to this fact.
-
The CID Flatten commands did not work when the view was compacted.
-
CharInfo had been deliberately disabled in CID fonts
-
Show ATT didn't work with CID keyed fonts
-
The preference mapping between mac and opentype small caps features was wrong.
-
Werner found a strange bug in splinefill that I can't reproduce (and can't
understand how it could happen) but the fix appears obvious.
-
Add a command to show what glyphs use the current glyph in a substitution
(so "A.swash" would show that "A" used it, and "i" would show that "fi" used
it).
-
Changed the extension shown in the Generate Fonts dlg for multiple saves
to ".pfb". Put in a %s to make it obvious that more will be added to the
name. Support people who want .pfa fonts too.
-
The dialog for adding/editing correspondences between mac feature/settings
and opentype features never went away.
-
Disable the Default ATT menu if no char is selected in the fontview.
-
FontForge sometimes had trouble drawing the correct rotated glyph in cid
fonts on the display lines of the fontview.
-
Changed the way names used in cidmap files, so there are new cidmap files
now.
-
The ShowAtt dialog could overwrite itself if there were enough aats in it.
(and at one point the vertical scroll bar was set to the bounds of the horizontal
scroll bar)
-
Still getting the windows ascent/descent wrong. This time in CID keyed fonts.
-
Add some new language translations for things like "Bold" (dutch, swedish,
norwegian)
-
Dragging and dropping a char from the font view into the char info dlg (to
create a substitution) created a crash instead.
-
Support more of postscript in the interpreter
-
Our svg fonts pointed to a not-yet-existing dtd file
-
Support for Apple's distortable fonts (sort of like truetype multi-master
fonts)
-
Depressing the control key now makes popups live longer (until the mouse
moves).
-
new command in MM menu: Blend to new font
-
2-Mar-2004
-
Changed name from pfaedit to fontforge
FontForge was first released on 2-Mar-2004. An earlier version of the program,
called PfaEdit, was begun in Sept of 2000, released on the web 7-Nov-2000,
and moved to pfaedit.sf.net on 21-Apr-2001.