Learning a Manifold of Fonts
University College London, University of Bath
University College London, NVIDIA
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
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).
We would like to thank Andrew Fitzgibbon for insightful discussions about optimization philosophy and techniques. This work was funded by EPSRC grant EP/I031170/1.