The typography of Sacha Baron Cohen’s “Who Is America?”

I couldn’t help but notice how jar­ring the titles for Showtime’s “Who Is Amer­i­ca?” are, but I couldn’t put my fin­ger on why. It’s clear­ly some con­densed extra bold, which are often pret­ty ungain­ly, with some excep­tions (Futu­ra Bold Codensed, of Nike fame). My first thought was that it might be some­thing like Cal­ib­ri or Tahoma, some unsight­ly human­ist sans that was even pos­si­bly man­u­al­ly stretched.

I Googled around for a screen­shot of the titles, and what I found instead was a lot of pro­mo­tion­al mate­r­i­al that pri­mar­i­ly does use Futu­ra Bold Con­densed:

(And Ari­al Bold, unfor­tu­nate­ly.)

I can’t help but won­der if the design­ers behind the titles in the aired show were try­ing to mim­ic Futu­ra Bold Con­densed, but either weren’t able to or didn’t know they weren’t using the same type­face.

I admit I had to look it up, but the type­face they are using is Aba­di Con­densed Extra Bold. Why this type­face? After a lit­tle more Googling I learned that Aba­di is includ­ed in sev­er­al Microsoft prod­ucts.

What isn’t includ­ed in most Microsoft prod­ucts? Futu­ra Bold Con­densed.

The New Ubuntu Maverick System Font

When Mark Shut­tle­worth announced the rebrand­ing of Ubun­tu, it seemed nobody noticed that he men­tioned a new sys­tem font was being devel­oped. Cur­rent­ly Bit­stream Vera Sans is the default (if I’m not mis­tak­en), appear­ing on menu bars, title bars, but­tons — pret­ty much every­where. I’ve always thought it has served its pur­pose well, and was frankly a lit­tle wor­ried that they wouldn’t get the new sys­tem font right. Type design is extra­or­di­nar­i­ly tricky.

Now how­ev­er details are start­ing to emerge. OMG! Ubun­tu! describes how to get a boot­leg copy of it. And at UDS back in May, Bruno Maag gave a ses­sion enti­tled “Mak­ing Beau­ti­ful Fonts” in which he elab­o­rat­ed on the cre­ation of the new font. There is now video of that ses­sion, as well as the slides, which were sad­ly not includ­ed in the frame.

My first impres­sion is that it feels a bit too stiff, rigid, and tech-y. Of course there’s no way to tell until you use it on your desk­top. Reas­sur­ing, how­ev­er, that they’re giv­ing it prop­er ital­ics.

Web Typography in Ubuntu: Part 1

One of the first things a care­ful observ­er will like­ly notice about a fresh Ubun­tu install is the dis­tinct­ly odd appear­ance of their favorite web­sites. The cause for this is that, although Ubun­tu ships with a fair selec­tion of fonts, they aren’t prop­er­ly assigned as alias­es to the pro­pri­etary fonts that most web­sites call for; Hel­veti­ca and Ari­al have a per­fect cousin in FreeSans, yet are sub­sti­tut­ed with Lib­er­a­tion Sans by default, the lat­ter of whose stemmed “1” and barred “J” (among oth­er things) is a dead give­away. Like­wise, Ver­dana is also sub­sti­tut­ed with Lib­er­a­tion Sans, when DejaVu Sans is a much clos­er fit. Then there’s Times New Roman, Luci­da Grande, Baskerville — none of which is ade­quate­ly mim­ic­ked.

Sev­er­al of these fonts are bet­ter served by some Ubun­tu defaults, and still oth­ers — Gill Sans, Opti­ma, Caslon, Tahoma, and more — have decent sub­sti­tutes just wait­ing in the repos­i­to­ries. Typog­ra­phy plays a greater role in user expe­ri­ence than I think most peo­ple work­ing on Ubun­tu real­ize, and it should be a goal of 10.10 to ele­vate this part of the OS as much as pos­si­ble. This requires just a few extra kilo­bytes in pack­ages and some changes/additions to the files in /etc/fonts/conf.d/. In a sub­se­quent post I’ll be cat­a­loging what those changes should be.

Con­tin­ue →

Liberation: The New Arial sans-serif Substitute in Jaunty

One of the first things I noticed after boot­ing into Ubun­tu 9.04, Jaun­ty Jack­a­lope, is that Google Read­er and Gmail looked a bit off. I quick­ly real­ized they were both using dif­fer­ent sans-serif fonts than they had pre­vi­ous­ly (Nim­bus Sans), despite Firefox’s pref­er­ences hav­ing Nim­bus set as the default sans.

I knew that Google isn’t so great with their stylesheets, in some cas­es declar­ing a font-fam­i­ly of just “Ari­al,” with no “sans-serif” back­up in the font-stack (which would, of course, let Fire­fox sub­sti­tute in whichev­er default sans the user had set – in my case, Nim­bus).

I also knew through play­ing around with ~/fonts.conf that Lin­ux allows you to define sub­sti­tu­tions for dif­fer­ent font names. It was my hunch that there was some­thing new about Jaun­ty (which has been praised for its bet­ter pre­sen­ta­tion of text) that defined Lib­er­a­tion Sans – the font I deter­mined I was look­ing at – as the prefer­able sub­sti­tute for Ari­al.

After look­ing around a bit I found the cul­prit in /etc/fonts/conf.avail/30-metric-aliases.conf. Around line 182 you should see the begin­ning of a sec­tion devot­ed to the Microsoft type­faces, and short­ly under that (around line 186), the line:

<family>Liberation Sans</family>

Just above that, insert the fol­low­ing line:

<family>Nimbus Sans L</family>

Reboot your sys­tem, and when you’re back up, Ubun­tu should now replace any calls for Ari­al with Nim­bus Sans.

Of course, this should only be done if you pre­fer Nim­bus Sans. It’s been claimed that Lib­er­a­tion Sans is bet­ter hint­ed than either Nim­bus or FreeSans, and from the looks of things, it is. Still, I just pre­fer Nim­bus. That serif on the upper-case ‘J’ in Lib­er­tine espe­cial­ly both­ers me.

I still love Lin­ux Lib­er­tine as a Times sub­sti­tute, how­ev­er.

Ubuntu, Font Hinting, & You: A Cautionary Tale

This post was writ­ten regard­ing Ubun­tu 8.10, Intre­pid Ibex.

This isn’t the first time I’ve encoun­tered hint­ing; I’ve seen it before in GIMP, even when I was using it in Win­dows, this font ren­der­ing option that was inex­plic­a­bly on by default, and result­ed in hor­ri­ble kern­ing and mis­shapen let­ter­forms. I don’t claim to know a lot about the tech­ni­cal­i­ties of hint­ing, but every­thing I do under­stand about it agrees that it is meant to improve the shapes of let­ters. If this is the case, some­body is doing some­thing very, very wrong. I haven’t seen a hint­ed font that looked any­thing oth­er than sick­ly and disheveled.

I’ve com­plained before about the typog­ra­phy in Ubun­tu, but my con­tention then was with the fonts that were in use by default, not with the way they were ren­dered. What I didn’t real­ize at the time is that the ren­der­ing is the bulk of the prob­lem.

applicationsmenuI found this image on the Ubun­tu site, and I am still in dis­be­lief that they choose to rep­re­sent them­selves with font ren­der­ing like this. Look at that cap­i­tal ‘A’ and ‘V’; look at the way that low­er-case ‘l’ tow­ers over its neigh­bors, noth­ing more than a sin­gle-pix­el-width ver­ti­cal line; look at the kern­ing in the ‘Rem’ of ‘Remove’ – it’s no won­der Ubun­tu has about a 2% world­wide mar­ket share. They expect peo­ple to want to look at that every day of their lives? I know these are rel­a­tive­ly sub­tle details, but their effects are sub­lim­i­nal and, I believe, psy­cho­log­i­cal­ly haz­ardous.

~/.fonts.conf

Of course, when it comes to Lin­ux, for every prob­lem there are a few dozen solu­tions – or one very, very com­pli­cat­ed solu­tion. GNOME, the default desk­top for Ubun­tu, arrives with a “Font Ren­der­ing Details” dia­log box in its appear­ance set­tings, to pla­cate the mouth-breath­ing philistines who need a GUI to get things done. And it doesn’t real­ly help much. I knew I’d have to get my hands dirty in ~/.fonts.conf, this XML file that is capa­ble (and only capa­ble) of incred­i­bly fine-tuned font tweak­ing.

[Fonts are] the #1 rea­son why Lin­ux hasn’t seen any sig­nif­i­cant adop­tion on the desktop/laptop yet. Robert Scoble

The trou­ble, as is the case with most Google results you get when look­ing for help with Lin­ux, is that there is a glut of quick fix­es, blocks of code direct­ed towards one spe­cif­ic per­son and their spe­cif­ic sys­tem, that they are then told to paste into a file or save into a direc­to­ry, with lit­tle to no expla­na­tion about why this solu­tion is going to work. Or there’s the tech­ni­cal doc­u­men­ta­tion that isn’t geared towards users. There’s no mid­dle ground (unless you count the occa­sion­al, skele­tal wiki that hasn’t been updat­ed since 2004).

Only after look­ing at count­less ~/.fonts.conf exam­ples was I able to glean what was going on inside them. The full pow­er of this file allows you to tar­get with amaz­ing pre­ci­sion any vari­ant or size of any font your sys­tem might dis­play and give it its own unique prop­er­ties; but there are real­ly only three(ish) of these prop­er­ties that you need to know about, and I am going to explain them here.

antialias

Anti-alias­ing is the trick that makes your pix­els not look like pix­els. You’ve noticed this when you’ve seen poor­ly resized images with jagged edges – they’re not prop­er­ly anti-aliased. Sim­i­lar­ly, if fonts are not anti-aliased, they look like black Tetris pieces on a white back­ground. Anti-alias­ing is going on all the time with­out you know­ing about it, and you’d real­ly have to make an effort not to have it, but it’s worth putting in your ~/.fonts.conf file for good mea­sure. You’ll want to apply it to all fonts on your sys­tem, so the syn­tax would be:

<match target="font">
 <edit name="antialias" mode="assign">
  <bool>true</bool>
 </edit>
</match>

You can prob­a­bly fig­ure out what these things mean, but I will link to a com­plete man­u­al for ~/.fonts.conf syn­tax at the end of this post.

rgba

This one is a mat­ter of per­son­al pref­er­ence, I guess. I don’t see how any­body of sound mind could stand to have pink, beige, and turquoise pix­els sprin­kled around the edges of their let­ters – the result of “sub-pix­el ren­der­ing” – but I guess the argu­ment is that it allows them to be sharp­er. What­ev­er.

Trust me when I say that things look best if you tell ~/.fonts.conf to dis­able sub-pix­el ren­der­ing, which is done like so:

<match target="font">
 <edit name="rgba" mode="assign">
  <const>none</const>
 </edit>
</match>

If you hap­pen to be schiz­o­phrenic, or col­or­blind or what­ev­er, then yes, fine, you can turn on sub-pix­el ren­der­ing by chang­ing none to rgb, to reflect the com­po­si­tion of your monitor’s sub­pix­els (which are almost cer­tain­ly in the order Red-Green-Blue, from left to right). Have fun scratch­ing your eye­balls out.

rgba=rgb

rgba=rgb

rgba=none

rgba=none

Admit­ted­ly it would be nice if there were some antialiasstyle prop­er­ty you could set to antialiasslight or some­thing, to light­en up those gray pix­els a lit­tle bit.

hinting / autohint / hintstyle

Put it on my tomb­stone: Turn Off Hint­ing. I’m beg­ging you. If some­body tries to tell you that this is a mat­ter of pref­er­ence, they are lying to you, and are not your friend, and are prob­a­bly bang­ing your girl­friend. If you leave hint­ing on, Geor­gia will not look like Geor­gia, Luci­da will not look like Luci­da, and Nim­bus will not look like Hel­veti­ca.

hintstyle=hintnone

hintstyle=hintnone

hinting=true, autohint=true

hinting=true, autohint=true

Here is how you Turn Off Hint­ing®:

<match target="font">
 <edit name="hinting" mode="assign">
  <bool>false</bool>
 </edit>
 <edit name="autohint" mode="assign">
  <bool>false</bool>
 </edit>
 <edit name="hintstyle" mode="assign">
  <const>hintnone</const>
 </edit>
</match>

Alter­na­tive­ly, if you pos­i­tive­ly demand more “crisp­ness” from your fonts, even at the expense of aes­thet­ics, you might want to give slight hint­ing a try. From the above code, change hinting and autohint to true, and hintstyle to hintslight:

hintstyle=hintslight

hintstyle=hintslight

That’s it, rough­ly speak­ing. It’s my under­stand­ing that some spe­cif­ic fonts do look bet­ter if specif­i­cal­ly tar­get­ed and adjust­ed with maybe slight hint­ing. But that’s for anoth­er day. If you do as I’ve instruct­ed, things will be so much bet­ter for you. Leave a com­ment if you want my Pay­Pal address.

This post would not have been pos­si­ble with­out the help of these sites:

  • Arch­Wi­ki: I know noth­ing about Arch Lin­ux, but this wiki page has a lot of good info.
  • fontconfig.org: the most com­plete and recent ~/.fonts.conf ref­er­ence I’ve found.
  • Ubun­tu Wiki: con­tains an exam­ple of a very com­pre­hen­sive (if dat­ed) ~/.fonts.conf file. Study it and learn how to do oth­er stuff.
  • The Mas­ter­plan: anoth­er sam­ple ~/.fonts.conf file, and the only oth­er one that I know of that turns off hint­ing and sub­pix­el ren­der­ing.