Modified Fonts for Visualization

All the examples of using font attributes in this blog, until this post, have used off-the-shelf fonts and their associated attributes, such as weight, italic, case and so forth. Oblique angle has also been used (on sans serifs), as it is fairly easy to apply a shear transformation across an entire string.

But, what about intrinsic attributes of a font that are rarely exposed by the font designer, such as x-height or font width? Font width is sometimes exposed at a couple levels (normal, narrow, wide) but what if you wanted to encode a quantitative value in font width? Typographers are adamant that fonts much never be scaled (i.e. stretched or compressed via a transformation, e.g. Lupton) – therefore, one would potentially need to get into manipulating the intrinsic elements of fonts.

There are two parts to this question:
1. What intrinsic font attributes might be modified?
2. Are there any possible visualization applications where these attributes might be used to add information into a text?

Intrinsic font attributes

When a font designer creates a font, there are a wide variety of graphical features that define a font, beyond serifs/sans serifs, such as:

  • type of serif (slab serif, bracketed serif, hairline serif),
  • serif size (none, narrow or wide),
  • x-height (height of the lower case letters),
  • contrast (ratio between the thick and thin strokes),
  • character width (how wide the letters are),
  • angle of stress (the angle where the thinnest part of the stroke occurs),
  • and other features.

Elements of font design can be seen in a wide variety of illustrations that show “anatomy of a font” or “types of serifs“. Here is an excellent illustration from Karen Cheng’s book Designing Type:

Sample Type Attributes, from illustration in Karen Cheng's Designing Type.

Sample Type Attributes, from illustration in Karen Cheng’s Designing Type.

The above listed features could potentially encode quantities, although in practice, it is highly questionable where one might perceive an attribute such as the angle of stress: this blog is written in a nice stressed serif font – what’s the stress angle?

However, an attribute such as x-height or character width may be much more noticeable. If these were exposed, it is feasible that a number of levels could be perceivable. Do note that there are some very interesting experimental font families that do expose attributes not commonly exposed in commercial fonts, for example Gerritt Noordzij:

Gerritt Noordzij: A font superfamily with variation in contrast, stress angle and weight.

Gerritt Noordzij: A font superfamily with variation in contrast, stress angle and weight.

Visualization applications using x-height and/or width

Moving on to visualization, how could these features be used to encode information. What possible applications might exist?

Prosody is the patterns of rhythm and sound used in poetry and music. Various ways of visualizing prosody have been done. For example, in ReadN’Karaoke, Patel and Furr use cues including character position, weight and spacing.

Read N Karaoke. Various visual encodings to represent prosody.

Read N Karaoke. Various visual encodings to represent prosody.

In written prose, however, adjusting spacing of text, such as ReadN’Karaoke would interrupt the flow of the text and require a lot of space. Similarly, traditional music notation would significantly impact layout and require more space. As such, in many prose texts, poetry or signing may be differentiated from surrounding text by being set in italics. Unfortunately, this does not convey any of the song qualities such as note pitch or duration.

Instead, consider if syllables used x-height to indicate note pitch and character width to indicate note duration (caps are not adjusted):

Prosody: x-height indicates pitch, character width indicates duration.

Simple song with x-height indicating pitch, character width indicating duration.

This seems like a plausible way to encode musical attributes, although not necessarily intuitive. The larger x-heights denote the highest pitches, but they fill up the largest areas, which isn’t intuitively associated with a high pitch, perhaps suggestive of a higher volume or perhaps suggestive of a deeper pitch.

Instead of aligning the characters to a common baseline, consider aligning the characters to the maximum x-height line. The character height still encodes pitch, but now the deeper characters encode the deeper pitches, while high short characters encode high pitches – possibly a more intuitive encoding than the previous example.

Simple song. Text is aligned to the character with the highest x-height. Depth of lowercase characters indicates pitch; width indicates duration.

Simple song. Text is aligned to the character with the highest x-height. Depth of lowercase characters indicates pitch; width indicates duration.

Besides prosody, are there other applications for such modifications of individual characters within a word? Comments?


About richardbrath

Richard is a long time visualization designer and researcher. Professionally, I am one of the partners of Uncharted Software Inc. I am also pursuing a part-time PhD in data visualization at LSBU. The opinions on this blog are related to my personal interests in data visualization, particularly around research interests related to my PhD work- this blog is about exploratory aspects of data visualization not proven principles.
This entry was posted in Data Visualization, Font Visualization and tagged , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s