FontForge

Software Screenshot:
FontForge
Software Details:
Version: 2.0 Build 20150612 updated
Upload Date: 17 Jul 15
Developer: George Williams
Distribution Type: Freeware
Downloads: 158

Rating: 4.0/5 (Total Votes: 1)

FontForge is an open source, cross-platform and freely distributed graphical application designed to allow anyone with some experience in creating fonts to edit existing fonts, as well as to create new ones.

Lets you create various font types

The software has been engineered in such a way that it lets you create various font types. At the moment, it supports TrueType (TTF), PostScript (PS), OpenType (OTF), Multi-Master, Cid-Keyed, CFF (Compact Font Format), Bitmap (BDF), and SVG (Scalable Vector Graphics) fonts.

It can import various image files

FontForge has been designed from the ground up to allow font designers to easily and quickly import various image files, such as JPG, PNG or TIFF, which can be used as character backgrounds for tracing purposes.

You can use it to convert fonts

The FontForge application also lets users to easily and quickly convert fonts from one format to another. In addition, it supports several fonts that are mostly used on Mac OS X operating systems.

Getting started with FontForge

On a GNU/Linux distribution, you can usually install FontForge directly from its official software repositories, using the built-in package manager. However, if you can’t find the application there, you can always install it using the source package distributed for free on Softoware.

After installation, you can start the application from the Graphics section of your desktop environment’s Start Menu. You will be asked if you want to open and edit an existing font or if you want to create a new one. Its user interface is simple and intuitive, so you won’t have a problem using it.

Runs on Linux, Windows and Mac

This is a cross-platform application that runs on any Linux kernel-based operating systems, as well as on the Mac OS X and Microsoft Windows OSes. Currently, it supports 32 and 64-bit computer platforms.

What is new in this release:

  • This fixes a few bugs and quirks and adds a few user interface enhancements.
  • The binary package for Windows is attached. A 2nd release version was made to ensure it runs on Windows XP.
  • The binary package for Mac is attached, fixing a major slowness problem in the previous release. Due to odd (but nonetheless very bad) problems using Carbon (which Apple has decided not to make available in a 64-bit version) in 64-bit mode on later versions of Mac OS X, FontForge no longer uses the Carbon event loop and is thus unable to accept file-drop events on Macintosh. See #1956 and #2004 for more information.
  • Binaries (and source packages) for Ubuntu and Debian are available from the official FontForge Launchpad archive here.
  • The source package for Red Hat is attached. Despite the generic name, it is only for Red Hat.
  • Binaries for Macintosh ought to arrive in the next few days.

What is new in version 2.0 Build 20141230:

  • This fixes a few bugs and quirks and adds a few user interface enhancements.
  • The binary package for Windows is attached. A 2nd release version was made to ensure it runs on Windows XP.
  • The binary package for Mac is attached, fixing a major slowness problem in the previous release. Due to odd (but nonetheless very bad) problems using Carbon (which Apple has decided not to make available in a 64-bit version) in 64-bit mode on later versions of Mac OS X, FontForge no longer uses the Carbon event loop and is thus unable to accept file-drop events on Macintosh. See #1956 and #2004 for more information.
  • Binaries (and source packages) for Ubuntu and Debian are available from the official FontForge Launchpad archive here.
  • The source package for Red Hat is attached. Despite the generic name, it is only for Red Hat.
  • Binaries for Macintosh ought to arrive in the next few days.

What is new in version 2.0 Build 20140101:

  • Large overhaul of the Compile Make build system was moved over into Autoconf with much code updated to use this method of building FontForge - this is still a work in progress.
  • Large number of hard-to-find bugs and errors found and resolved.
  • Large review of bit mapping - with a more graceful/tolerant fail mode from errors.
  • Many improvements added for Python - Enabled for Python 2.x or Python 3.x
  • Many improvements added to Native Scripting.
  • File recovery added.
  • New features added, such as ReadLine, File Collaboration, and GUI options.
  • Several Languages updated.
  • New Tango Theme added, or you can continue to use the original 2012 GUI Theme.
  • Command-line options updated to be more familiar for open source such as making use of '--' or '-'
  • Many fixes to accommodate the new Macs.
  • Separation of libfontforgeexe and FontForge into it's own directory.
  • Make use of web-based code-checkers, such as travis ci during development.

What is new in version 20081115:

  • Displaying magnified bitmap strikes in the font view often caused a crash.
  • Non-English translations of "%d pixel bitmap" in the View menu of the font view came out garbled. There were interpreted as latin1 rather than utf8

What is new in version 20080927:

  • Implement a concept of "master counters" (similar to PS counter hints, but more flexibe). I. e. if there are two or more equal or similar counters in the glyph, then references pointing to stems forming the first counter are added to stems forming the subsequent counters. This can be used to implement a sort of counter control in the autoinstructor. Adjust the width to length ratio used to determine if a diagonal stem is acceptable.
  • There appears to be (what I consider to be) a bug in scim. If the Mod2Mask bit is set in the event then it returns a keysym of 0. Other input managers do not do this. And some input managers depend on having that bit set (it is used on the Mac for Option processing for example). The upshot is that if I want to do mnemonics (Alt/Meta key sets Mod2Mask) I must clear this bit when passing info to scim. Since I don't know what input manager is attached I must clear the bit for all managers. Which breaks some of them.
  • When doing completion in a textfield, if ff completed the entire string, then it would not select the unexpected stuff. The result would be that I would type "a", then "." and ff would complete to "a.sc" (rather than "a.sc") so when I typed the "s" I would get "a.scs" rather than "a.sc".
  • Add code to allow users to customize the font used in various dialogs and windows which previously could not be customized.
  • Multiple Master dlg was very broken.
  • Saving and Reading quadradic splines to the 'PfEd'.'layr' subtable didn't work. Also if we didn't save the background layer (layer=0) then a random layer would (inappropriately) become the background. Extend the 'layr' format to store a background/foreground flag per layer.
  • Still problems in importing lookups on 64bit machines.
  • A thread on typophile exposes my ignorance. The x-height of an italic font is usually a little less than that of it's companion roman font. (This is to correct for an optical illusion, because vertical stems are slanted in italic they will be longer than the corresponding stem in an upright font, and to the human eye they will look taller (even though they are not)). So add an option to the Italic dialog to make the x-height a little smaller.
  • Change the menu handler so it can draw mac menu icons (cloverleaf for command, up arrow for shift, ^ for control and weird squiggly for option). Remove the hack that if the modifier mask for the command key was set then we'd also set the control mask (this meant that the command key would work as control, but it meant it could only work as control). Let the command key work as itself, and put in special code to check whether X11 is going to give us the command key (or will that key be used in the X11's own menubar). If we get command then we load a special set of keymap bindings (which, presumably, will use command). If we don't find a special set of keymaps, then fall back on normal processing.
  • Make the pixelsize in anchor control be saved in prefs file (clean up prefs file for scripting, bring up to date).
  • We didn't have any way to remove an sfnt table (like 'fpgm') even though we tell the user to do exactly that in the auto instructor.
  • Was not allocating enough memory for comments in the cvt table structure when user did a [Change Length].
  • Patch by Thomas ?. When FF loaded a ufo font (actually any glyf file) it used integers for the coordinates instead of reals.
  • We used to move left and right point coordinates to the baseline for italic stems, so that they may well fall outside of the glyph bounding box. So prevent the situation where this could lead to a nan in spline creation. Also don't change the slope of italic stems when resizing a glyph.
  • Clear should only clear anchors, hints and tt instructions if it is the last foreground layer. We could get picky and clear hints when the last cubic foreground layer went, and instructions whent he last quadratic layer went, but I don't think it is worth the bother.
  • If we have a 'TYP1' sfnt with a kern table which kerns a glyph with no unicode encoding, then FF would likely crash.
  • Oops. Typo in Generic change function. Crashed when doing change glyph on a glyph with only references
  • Just as the paste command should only set the width in foreground layers if all other foreground layers are empty, so the clear command should only reset the width in similar conditions.
  • Internal conversion from fontforge splinesets to ff python contours would often leave interpolated points showing in the contour.
  • When FF generated a default name for a lookup when adding a new lookup from font info, that lookup index was always set to 0, which meant multiple lookups for the same feature would stand a good chance of getting the same default name. Do a little better.
  • Extend the small caps dlg to create petite caps if desired.
  • Fix an uninitialized variable in GXDrawGrabSelection.
  • FF would attach a mark to the first anchor point in the correct subtable in the base glyph. It would not check for the correct anchor class.
  • Python contour conversions would often introduce a control point on a linear order2 spline.
  • List of Panose letterforms was missing an entry from the middle so all later entries were off by one.
  • "Fore" and "Back" weren't localized in one significant place.
  • Add a few more checks (when reading in) on the validity of the 'MATH' table.
  • FF would generate a bad MATH table if given a glyph with assembly data but no variant sizes.
  • Dropping a drag and drop into the metricsview after the last character tried to insert the drop before the first character. Clean up drag and drop from the font view a bit.
  • I have been trying to attach marks to bases backwards. It is the mark which moves, so the attachment should happen when we get to the mark, and we should look backwards to find the base. I have been finding the base, and then walking forward to find the mark. My approach failed if the lookup contains multiple subtables and a base glyph has two marks being attached, one from each subtable -- I would attach the mark in the first subtable, but then having found a subtable that worked would stop, and the second mark never got attached.
  • When dragging and dropping lookups, allow dropping a lookup subtable into a different lookup of the same font (assuming it's got the right lookup type).
  • The recent patch to insure that [Imported] lookups from one font to another came across in the right order didn't work if there were nested lookups involved. The order of nested lookups is irrelevant -- unless they are also used in a non-nested context.
  • Add the ability to define a "Group" by glyph color.

Requirements:

  • Python

Similar Software

Kabayan
Kabayan

11 May 15

6,760 Fonts
6,760 Fonts

2 Jun 15

odstemplik
odstemplik

11 May 15

Fontlinge
Fontlinge

3 Jun 15

Comments to FontForge

1 Comments
  • محمد 7 Jun 19
    عزيزي انا لا اريد انشاء ملف خطوط
    فهناك براج لعمل ذلك مثل فونت فورنج
    ولكنني اريد عمل كلمات مثل هذه ﷽ ..كما ترى هذه الكلمة ليست ملفاً انما نصاً يمكنك كتابتة في اي مكان
Add Comment
Turn on images!