Take the 2-minute tour ×

I was reading another question on this site, and this was a sample of a cursive font from that discussion:


I really like it, but immediately noticed that it could not have been written by a human, because of how perfectly similar all of the t's and d's looked.

I think that creating convincing "dynamic" typefaces would be an interesting challenge. I don't know of any particularly good applications for it, other than to help out those folks with terrible handwriting, who don't have artistic skill, or who have disabilities (hooray for speech recognition!).

There should be a set of several glyphs for each character, so that they may be randomly chosen when typeset.

In order to get letters to flow together (as they should when using a cursive style) it seems like there needs to be ways to specify "regions" where lines can be bent to accomodate different combinations.

When not dealing with cursive, it is a much simpler problem, but I still don't know of any systems which focus on facilitating the creation of "variable" print. It would be dead simple: an extended font file, and a RNG.

So what I want to know is, has anybody else ever been bothered by this issue, where no cursive font has ever looked convincing? Are there any typographical systems which do these things I describe?

share|improve this question
The OpenType font format can do this: ascenderfonts.com/info/designerstoolbox/august2009.aspx. I don't think this can be used directly in (La)TeX, though. –  Jake Sep 25 '11 at 2:55
The problem is more about a good font has all these features, for example, Zapfino. However, as far as I know there seems no such systems of creating glyphs dynamically. Using a fonts like Zapfino requires substantial typographical skills (you won't really want to use its glyphs randomly) –  Yan Zhou Sep 25 '11 at 3:03
add comment

3 Answers

up vote 14 down vote accepted

Both Apple Advanced Typography and OpenType fonts can do this. Like Yan Zhou said, what you need is a good font that has variants and contextual alternates (such as Zapfino or Bickham Script Pro), and then to use XeTeX (or LuaTeX with OpenType) with the fontspec package to make use of these features.

See for example this question and the XeTeX showcase.

This example also makes use of contextual alternates to produce old-style typography.

Here are examples of Bickham Script Pro and Zapfino in action:

Bickham Script Pro


share|improve this answer
there's a nice tugboat article on zapfino that has many illustrations and commentary on what was involved in producing them. –  barbara beeton Sep 25 '11 at 13:14
That's beautiful... thanks –  Steven Lu Sep 25 '11 at 18:22
add comment

The Punk Nova font uses the opentype randomize feature to select glyphs from a list of alternate glyphs. See the example provided along with the font, which clearly shows the same letter with different shapes.

See Chapter XXIV of the ConTeXt MkII to MkIV manual for a much more drastic example that explains how to generate a randomized virtual font.

share|improve this answer
add comment

MetamorFont may be of interest to you. See luc.devroye.org/desruisseaux/.

share|improve this answer
add comment

Your Answer


