Jump to content

Unified Font Object

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Colinmford (talk | contribs) at 19:08, 5 November 2021 (correcting thousands to hundreds). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
Unified Font Object (UFO)
Filename extension
.ufo, .ufoz
Developed byTal Leming, Just van Rossum, Erik van Blokland, Ben Kiel, Frederik Berlaen
Initial release1.0
Latest release
3.0
Type of format macOS Package, XML, Property List
Free format?Yes
Websitehttp://unifiedfontobject.org

The Unified Font Object (UFO) is an XML-based source file format for digital fonts. It was created by Tal Leming, Just van Rossum and Erik van Blokland[1]. Maintainers of the project also include Ben Kiel and Frederik Berlaen[1]. The format is a "future proof" format that is designed to be "application independent" and "human readable and human editable"[2].

History

The first UFO format was written by Tal Leming, Just van Rossum and Erik van Blokland in 2004, and presented to the public at the Robothon conference, held in The Hague in 2005.

Technical Format

On macOS, the UFO appears as a package; a file system directory that presents as a single file. On Windows and other operating systems, it appears to be a file system directory containing Property List files and XML files.

Use in Programming

The UFO file format translates easily to object-based representation[3] in code. Popular libraries for accessing UFO data include the following:

Python Libraries

  • RoboFab, The first python library written specifically to access UFO data, by Leming, van Rossum and van Blokland, now defunct.
  • FontParts, The successor to RoboFab.
  • FontTools, A library for accessing font data started by Just van Rossum. ufoLib, originally a separate low-level library for writing UFO files was merged into the library in October, 2018[4]

Other Languages

Reception

The font editing program RoboFont uses UFO as its only source file format[5]. Other font editing programs, such as Glyphs[6], FontLab VI[7] and FontForge[8] can read and write the UFO format natively.

The UFO format is a popular choice among open source font projects, because the text-based format is compatible with version control systems like Git[9]. Open source font projects that have used UFO as their main format include Adobe's Source Sans Pro[10], Source Code Pro[11] and Source Serif Pro[12], and the IBM Plex superfamily[13]. Parts of the Noto fonts project are available in the UFO format[14].

A common criticism of the format is that its structure (of sometimes hundreds of files) does not work well with online file hosting services like Dropbox[15]. This criticism led to the creation of the "UFOZ" format, which compresses a UFO into a single zip archive, allowing it to be synced easier on such services.

References

  1. ^ a b "Contributors". unifiedfontobject.org. Archived from the original on 2021-11-05. Retrieved 2021-11-05.
  2. ^ "Overview". unifiedfontobject.org. Archived from the original on 2021-11-05. Retrieved 2021-11-05.
  3. ^ Beckmann, Tom (2019). The font engineering platform collaborative font creation in a self-supporting programming environment. Justus Hildebrand, Corinna Jaschek, Eva Krebs, Alexander Löser, Marcel Taeumel, Tobias Pape. Potsdam. p. 72. ISBN 978-3-86956-464-7. OCLC 1169672607.{{cite book}}: CS1 maint: location missing publisher (link)
  4. ^ "merge ufoLib into fontTools.ufoLib by anthrotype · Pull Request #1335 · fonttools/fonttools". GitHub. Retrieved 2021-11-05.
  5. ^ RoboFont. "Welcome to RoboFont!". robofont.com. Archived from the original on 2021-11-05. Retrieved 2021-11-05.
  6. ^ "Working with UFO | Glyphs". glyphsapp.com. Archived from the original on 2021-11-05. Retrieved 2021-11-05.
  7. ^ "FontLab 7. Pro font editor for Mac & Windows". www.fontlab.com. Archived from the original on 2021-11-05. Retrieved 2021-11-05.
  8. ^ "Technical Bulletin: UFO 3 Export". fontforge.org. Archived from the original on 2021-11-05. Retrieved 2021-11-05.
  9. ^ "LWN.net Weekly Edition for August 29, 2013 [LWN.net]". lwn.net. Archived from the original on 2021-11-05. Retrieved 2021-11-05.
  10. ^ "adobe-fonts/source-sans-pro". GitHub. Retrieved 2020-05-28.
  11. ^ adobe-fonts/source-code-pro, Adobe Fonts, 2020-05-28, retrieved 2020-05-28
  12. ^ "adobe-fonts/source-serif-pro". GitHub. Retrieved 2020-05-28.
  13. ^ IBM/plex, International Business Machines, 2020-05-28, retrieved 2020-05-28
  14. ^ Liputan6.com (2020-11-25). "Inisiatif Google Melestarikan Bahasa Terancam Punah Lewat Noto Font". liputan6.com (in Indonesian). Retrieved 2021-11-05.{{cite web}}: CS1 maint: numeric names: authors list (link)
  15. ^ Simonson, Mark (2014-06-12). "I didn't quite realize until recently: .ufo + Dropbox kind of sucks". @marksimonson. Retrieved 2020-05-28.