The Unified Font Object (UFO) is an
XML
Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. T ...
-based
source file format for
digital fonts. It was created by Tal Leming, Just van Rossum and
Erik van Blokland
Erik van Blokland (born 29 August 1967 in Gouda) is a Dutch typeface designer, educator and computer programmer. He is the head of the Type Media Master of Design program in Typeface Design at the Royal Academy of Art, The Hague in the Netherland ...
.
Contributors to the format also include Ben Kiel and Frederik Berlaen.
According to its creators, the UFO is a "
future proof
Future-proofing is the process of anticipating the future and developing methods of minimizing the effects of shocks and stresses of future events. Future-proofing is used in industries such as electronics, medical industry, industrial desig ...
"
open format that is designed to be "
application independent", "
human readable and human editable".
History
The first version of the UFO format was created in 2003.
The most recent version, UFO 3, was released in 2012.
RoboFog (1996–2003)
The idea for the Unified Font Object originated with a customized version of the
font editor
A font editor is a class of application software specifically designed to create or modify font files. Font editors differ greatly depending on if they are designed to edit bitmap fonts or outline fonts. Most modern font editors deal with the out ...
Fontographer
Fontographer (FOG) is a font editor for Windows and macOS; it is used to create digital fonts. It was originally developed by Altsys but is now owned by FontLab Ltd.
History Altsys Corporation
In December 1984, James R. Von Ehr II founded the ...
3.5.
Petr van Blokland, together with Just van Rossum and
Erik van Blokland
Erik van Blokland (born 29 August 1967 in Gouda) is a Dutch typeface designer, educator and computer programmer. He is the head of the Type Media Master of Design program in Typeface Design at the Royal Academy of Art, The Hague in the Netherland ...
, and with assistance from
David Berlow
The Font Bureau, Inc. or Font Bureau is a digital type foundry based in Boston, Massachusetts, United States. The foundry is one of the leading designers of typefaces, specializing in type designs for magazine and newspaper publishers.
History
...
and Steven Paul of the
Font Bureau
The Font Bureau, Inc. or Font Bureau is a digital type foundry based in Boston, Massachusetts, United States. The foundry is one of the leading designers of typefaces, specializing in type designs for magazine and newspaper publishers.
History
...
, created and distributed on a subscription basis a customized version of Fontographer called RoboFog in 1996.
RoboFog allowed users to script in
Python
Python may refer to:
Snakes
* Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia
** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia
* Python (mythology), a mythical serpent
Computing
* Python (pro ...
, a language Just's brother
Guido van Rossum invented two years prior in 1994.
The tool became very popular among
type designers because of the ability to automate tasks.
In 1998,
FontLab, rival font editor developer to Fontographer (then owned by
Macromedia) added Python to version 2.0 of their application, partially due to the popularity of RoboFog.
On March 24, 2001, Apple released
Mac OS X 10.0
Mac OS X 10.0 (code named Cheetah) is the first major release of macOS, Mac OS X, Apple Computer, Apple's desktop and server operating system. It was released on March 24, 2001 for a price of $129 after a Mac OS X Public Beta, public beta.
Mac ...
, a major rewrite of the Mac operating system. Fontographer was by then too old to be ported to Mac OS X, so the RoboFog developers turned their attention to FontLab.
RoboFab and the creation of UFO (2003–2009)
In February, 2003, at the TypoTechnica conference in
Heidelberg
Heidelberg (; Palatine German language, Palatine German: ''Heidlberg'') is a city in the States of Germany, German state of Baden-Württemberg, situated on the river Neckar in south-west Germany. As of the 2016 census, its population was 159,914 ...
, van Rossum, van Blokland and
Baltimore
Baltimore ( , locally: or ) is the List of municipalities in Maryland, most populous city in the U.S. state of Maryland, fourth most populous city in the Mid-Atlantic (United States), Mid-Atlantic, and List of United States cities by popula ...
-based type designer Tal Leming combined their existing FontLab API scripts into a Python module called RoboFab.
The group started going by the name "The RoboFab Consortium".
With RoboFab came a need for an interchange file format for transferring font data between RoboFog and FontLab.
In April, 2003, van Rossum started work on an XML-based file format for glyph data called the Glyph Interchange Format (GLIF).
In July, 2003, the group started work on the first UFO file format (later known as "UFO 1"), which used "GLIF for glyph information and
Apple's .plist (also XML based and entirely cross platform) for any other data as listings, indices, etc."
The group intended to present it at the 2003 RoboThon conference, but its launch was delayed until March 14, 2004.
The group introduced the UFO with the following manifesto:
# The data must be human readable and human editable.
# The data should be application independent.
# Data duplication should be avoided unless absolutely necessary.
In the consortium's view, font data should be independent of font editors to avoid issues like
Software rot
Software rot (bit rot, code rot, software erosion, software decay, or software entropy) is either a slow deterioration of software quality over time or its diminishing responsiveness that will eventually lead to software becoming faulty, unusabl ...
, which the field of type design is particularly prone to, due to the long period of time that fonts take to develop and the relative lack of variety in font editing applications.
Decentralization (2009–Present)
In 2009, UFO version 2 was announced at RoboThon 2009, bringing minor changes to the format. A variety of applications outside of FontLab using the UFO format started to be written at around this time, such as Leming's
kerning
In typography, kerning is the process of adjusting the spacing between Character (symbol), characters in a Typeface#Proportion, proportional font, usually to achieve a visually pleasing result. Kerning adjusts the space between individual le ...
application MetricsMachine, van Blokland's
interpolation
In the mathematical field of numerical analysis, interpolation is a type of estimation, a method of constructing (finding) new data points based on the range of a discrete set of known data points.
In engineering and science, one often has a n ...
application, Superpolator, and Frederik Berlaen's
parametric design
Parametric design is a design method where features (such as building elements and engineering components) are shaped according to algorithmic processes, in contrast to being designed directly. In this method, parameters and rules determine the r ...
application, KalliCulator.
At the request of David Berlow and Petr van Blokland, Frederik Berlaen started work in 2009 on a font editor that used the UFO as a native format.
Because of the network of apps now being used in the "UFO workflow", "the dependency of FontLab as a central drawing environment had created a bottleneck", in their view.
Berlaen presented his font editor RoboFont at
ATypI
The ATypI () or Association Typographique Internationale (the International Typography Association) is an international non-profit organisation dedicated to typography and type design. The primary activity of the association is an annual fall confe ...
2011 in
Reykjavík,
and gave it the tagline, "The missing UFO font editor".
At RoboThon 2012, UFO 3 was announced, and Tal Leming was named “
Benevolent Dictator for life
Benevolent dictator for life (BDFL) is a title given to a small number of open-source software development leaders, typically project founders who retain the final say in disputes or arguments within the community. The phrase originated in 1995 w ...
” of the UFO format.
Major changes to the UFO include a reworking of how the format organizes design layers, and an introduction of a
ZIP
Zip, Zips or ZIP may refer to:
Common uses
* ZIP Code, USPS postal code
* Zipper or zip, clothing fastener
Science and technology Computing
* ZIP (file format), a compressed archive file format
** zip, a command-line program from Info-ZIP
* Zi ...
-compressed "UFOZ" format.
Shortly thereafter, other font editing programs, such as Glyphs,
FontLab and
FontForge started supporting the UFO as an interchange format.
The fourth version of the format, "UFO 4", is currently in the concept phase.
Technical format
The UFO is a
package; a
file system directory that presents as a single file on
MacOS
macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and lapt ...
. On
Windows
Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for serv ...
and other operating systems without support for packages, it appears as a normal file system directory with the extension ".ufo".
UFOs are organized with XML-based
Property List files in the main UFO file system directory, describing font-wide metadata, like font name and weight, as well as interactions between glyphs, like glyph groups and kerning.
Files containing glyph
outline data are contained in a directory one level down, one file per glyph.
These files end in ".glif", and are in an XML-based format called "Glyph Interchange Format (GLIF)".
GLIF files can describe glyph
Bézier curves in cubic or quadratic formats.
OpenType features in
AFDKO feature syntax are stored in a
plain text file in the main UFO file system directory, with the filename extension ".fea".
Criticism
A common criticism of the format is that its structure (of sometimes hundreds of GLIF files) does not work well with
online file hosting services like
Dropbox. This criticism led to the proposal and adoption of the "UFOZ" format, which is a UFO (version 3 and up) compressed into a
ZIP
Zip, Zips or ZIP may refer to:
Common uses
* ZIP Code, USPS postal code
* Zipper or zip, clothing fastener
Science and technology Computing
* ZIP (file format), a compressed archive file format
** zip, a command-line program from Info-ZIP
* Zi ...
archive.
Another criticism of the UFO is that there is no
normalized form, as the order of elements in its files and indent standards are left up to the editor.
This led to the creation of a few "UFO Normalizers", like the "psfnormalize" command in
SIL International
SIL International (formerly known as the Summer Institute of Linguistics) is an evangelical Christian non-profit organization whose main purpose is to study, develop and document languages, especially those that are lesser-known, in order to ex ...
's "pysilfont" project,
and the "ufonormalizer" project by Tal Leming.
Use in applications
The following are some applications that support the UFO format either natively or as an officially-supported interchange format.
Use in open source font projects
The UFO format is a popular choice among
open source font projects because the XML-based, multiple file format is compatible with collaborative
version control systems
In software engineering, version control (also known as revision control, source control, or source code management) is a class of systems responsible for managing changes to computer programs, documents, large web sites, or other collections o ...
like
Git.
SIL International
SIL International (formerly known as the Summer Institute of Linguistics) is an evangelical Christian non-profit organization whose main purpose is to study, develop and document languages, especially those that are lesser-known, in order to ex ...
recommends UFO as the format for new font projects.
*
Source Sans Pro
Source Sans Pro is a sans serif typeface created by Paul D. Hunt, released by Adobe in 2012. It is the first open-source font family from Adobe, distributed under the SIL Open Font License.
The typeface is inspired by the forms of the Americ ...
and
Source Code Pro by
Adobe Originals
The Adobe Originals program is a series of digital typefaces created by Adobe Systems from 1989 for professional use, intended to be of extremely high design quality while offering a large feature set across many languages. Many are strongly infl ...
* Cooper Hewitt (typeface) by Chester Jenkins for
Cooper Hewitt, Smithsonian Design Museum
* Nokyung, a font for the
Tai Lue script and Andika Mtihani, both by SIL International.
* Parts of the
Noto fonts
Noto is a font family comprising over 100 individual fonts, which are together designed to cover all the scripts encoded in the Unicode standard. , Noto fonts cover all 93 scripts defined in Unicode version 6.1 (April 2012), although fewer than 3 ...
project are available in the UFO format.
* Open Baskerville, an open source revival of Fry's
Baskerville.
Use in programming
The UFO file format translates easily to
object-based representation in code. In addition to RoboFab, the project that originated the UFO format, many
closed
Closed may refer to:
Mathematics
* Closure (mathematics), a set, along with operations, for which applying those operations on members always results in a member of the set
* Closed set, a set which contains all its limit points
* Closed interval, ...
and
open source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
projects read and write UFOs, for instance the
Adobe Font Development Kit for OpenType The Adobe Font Development Kit for OpenType, also known as Adobe FDKO or simply AFDKO, is a font development kit (FDK), a set of command-line tools freely distributed by Adobe for editing and verifying OpenType fonts. It does not offer a glyph ed ...
.
See also
*
OpenType
OpenType is a format for scalable computer fonts. It was built on its predecessor TrueType, retaining TrueType's basic structure and adding many intricate data structures for prescribing typographic behavior. OpenType is a registered trademark o ...
*
Web Open Font Format
The Web Open Font Format (WOFF) is a font format for use in web pages.
WOFF files are OpenType or TrueType fonts, with format-specific compression applied and additional XML metadata added.
The two primary goals are first to distinguish font file ...
References
{{reflist
External links
Official WebsiteGitHub
XML-based standards
Font formats
Typography
Typography software