Learning a Manifold of Fonts

Neill D.F. Campbell and Jan Kautz, SIGGRAPH 2014

Please try out the interactive demo below!


The design and manipulation of typefaces and fonts is an area requiring substantial expertise; it can take many years of study to become a proficient typographer. At the same time, the use of typefaces is ubiquitous; there are many users who, while not experts, would like to be more involved in tweaking or changing existing fonts without suffering the learning curve of professional typography packages.

Given the wealth of fonts that are available today, we would like to exploit the expertise used to produce these fonts, and to enable everyday users to create, explore, and edit fonts. To this end, we build a generative manifold of standard fonts. Every location on the manifold corresponds to a unique and novel typeface, and is obtained by learning a non-linear mapping that intelligently interpolates and extrapolates existing fonts. Using the manifold, we can smoothly interpolate and move between existing fonts. We can also use the manifold as a constraint that makes a variety of new applications possible. For instance, when editing a single character, we can update all the other glyphs in a font simultaneously to keep them compatible with our changes.


Interactive 2D Font Manifold Demonstration

Please drag the black and white circle around the heat map to explore the 2D font manifold.

Unlikely Probability Likely
Select Character:    

Different characters may be selected from the drop-down menu. There are two types of manifold:

  • Joint manifolds (at the top of the dropdown menu). These are specified either for all of the characters of a particular subset, e.g. just the digits.
  • Separate manifolds learned for individual glyphs. These allow a full evaluation of all the individual matching results generated by our approach, e.g. the manifold for the glyph 'a' is only generated using the matching results for 'a'.

The manifold is a probabilistic embedding and the heat-map provides an indication of the probability of finding a reasonable font. Regions in red have a low predictive variance (high probability) while regions in blue have a high variance (low probability) and are less likely to produce representative characters. The darkest blue regions (away from the manifold) will return the average font.

Please note that the manifolds have been restricted to two dimensions for visualisation. The natural dimension of some of the manifolds may be higher and this can lead to separated islands. When performing other tasks with the manifold the natural dimensionality would be used. The grey dots indicate the embedded locations of the original fonts.

Browser Compatibility: We have tested with the latest versions of Safari (7.0.1) and Chrome (32.0.1700.77).


Learning a Manifold of Fonts
Neill D.F. Campbell and Jan Kautz
In ACM Transactions on Graphics (SIGGRAPH) 33(4), 2014
[pdf] [bibtex] [supplementary pdf]