Developer Documentation

Fonty Python is written in Python. It includes a command-line interface (CLI), as well as a graphical user interface (GUI) written in wxPython.

Fonty Python is a free, open-source project, released under the GNU GPL License v2.

Get the source

Our source code lives in a Subversion repository. To checkout the development trunk, use the following command:

$ svn co http://svn.fontypython.webfactional.com/trunk

Or just browse the repository.

Contributing

We welcome contributions to Fonty Python. If you have made changes to the code, the best way to submit those changes is in patch format to our issue tracker.

  • Mailing List: contact/discuss development at the Google Groups list
  • Issue tracker: Submit patches, bug reports, or feature requests here

You can review our simple code style guidelines and hacking policies below.

Development Policies

Enhancement Proposals

While most discussions should be carried out over the mailing list and/or issue tracker, the following pages offer a centralized place for storing notes, specs, and discussion summaries regarding certain enhancements:

Projects to Watch

Fontconfig
Library for font configuration and customization. As far as I can tell, this is used on most linux distros.
Pango
The core text and font handling library for GTK. Internationalization support and proper layout (using font tables). Does not provide a way to access non-system fonts as of now http://www.nabble.com/Pango-and-non-system-fonts-t4312477.html.
Cairo
Graphics rendering engine with font capabilities, through integration with Pango.
Graphite
A "smart font" rendering engine that supports complex scripting behaviors for Graphite-enabled fonts. Current work on integration of Pango with Graphite. Needs Graphite-enabled fonts.
Font Viewer
A simple utility that permits viewing/exploring of !Type1 and TrueType fonts. Written in C. May have some code that inspires about Type1 fonts or display techniques
FontTools
A library for manipulating fonts, written in Python. It supports TrueType, OpenType, AFM and to an extent Type 1 and some Mac-specific formats.
TTFQuery
Retrieves metadata about TTF fonts. Built off of FontTools.
FontForge
An outline font editor that lets you create your own postscript, truetype, opentype, cid-keyed, multi-master, cff, svg and bitmap (bdf, FON, NFNT) fonts, or edit existing ones.
FreeType 2
A software font engine used by most Linux distros
ft2 - Python bindings
An outdated set of Python bindings for the FreeType library
Py-freetype
Another set of Python bindings for Freetype
Optimal Use of Fonts on Linux
A fairly up-to-date Linux Fonts HOW-TO that explains different engines, font types, etc
Linux fonts (mostly X11)
A collection of notes on different aspects of font handling in linux
OpenType Specification
TrueType Specification
Type1 Specifications
Anti-Grain Geometry - Texts Rasterization Exposures
An article on font systems on Linux, Windows, and Mac OSX - includes discussion of Freetype