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:
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
- General Development Policies
- Code Style Guidelines
- Version Numbering
- Subversion Repository Layout and Source Control
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:
- ScratchPad -- a waiting area for unhatched ideas (consider submitting a ticket instead!)
Other Links
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
Useful Links
- 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
