Font Smoothing

So, you’ve finished your article for MSDN Magazine, complete with extra code samples and screenshots that you painstakingly copied into a separate folder as we asked (thank you!). You are feeling pretty proud of yourself for a thorough job well done. That is, until you get an email from one of our developmental editors asking you to retake all 14 screens with font smoothing turned off. “What’s the big deal?” you ask. “It looks good to me.”

I’ll give you an answer to your question in a second, but first let me give you a brief lesson in font smoothing—the reason why it looks good to you.

Font smoothing was originally one of several system enhancements included in the Plus! pack for Windows 95. It was created to help computer users read type better on screen. The problem with type on screen versus on paper is that computer displays show images in bitmap mode. What this means is that every image is really a bunch of tiny little squares that comprise the image thus making it difficult to display really smooth curves found in our standard font libraries.

Take a look at this screen:

Looks great right? This is how fonts would look in print (since you are viewing this on screen, you are going to have to use your imagination). Nice and smooth right?

Now, let’s take a look at how the non-smoothed fonts appear on your computer screen. Zoomed in a bit you can see the little squares that make up the lines of the text:


Not so smooth right?

This is where anti-aliasing on the screen comes into play. How does it work, you ask? Well, it works with the way that our eyes see things. Our eyes do not see in as precise detail as we would like to think. The human mind is quite clever—it converts the images into what it "thinks" they are supposed to look like. With anti-aliasing, the curve is created with squares of color that are shaded darker or lighter depending on how much of the curve would take up that square. For instance, if a portion of a curve takes up 10% of a pixel, that pixel would be shaded with 10% of the color saturation. What this all adds up to is that anti-aliasing adds shading along the curve to "fool the eye" into thinking it's seeing a smooth curve rather than a jagged bitmap.

However, when we print our magazines, we use process color, also known as CMYK (cyan, magenta, yellow, and black) or 4-color process printing to simulate thousands of possible colors. Color is put down on the sheet of paper using a separate plate for each of the four colors. When printing with two or more colors it is necessary to align the different plates: this is known as register. A printed piece which is out of register will have an unfocussed look, especially fonts. This process happens on these huge machines that move very, very quickly, which means that staying in register is extremely difficult. One little budge 1/100th of an inch in any direction will have a direct visual effect on what’s being printed.

If we have a font that doesn’t use font smoothing, there is only one color, black. Therefore there’s only one plate and absolutely no fear of being out of register. But, with an anti-aliased font, there are multiple colors at play and thus multiple plates that can easily get out of register.

Check out the zoomed in text with font smoothing turned on:

You can clearly see the four colors at play in the magic of making the on screen font more pleasing to your eye. But in print it’s not magic of the good witch variety, it’s a curse. If any one plate budges just a little bit, the font will appear fuzzy and unreadable, thus rendering your carefully selected screenshot useless to readers.

So, there you have it—the big deal.


Comments (3)
  1. If I am correct, Windows Metafiles essentially store GDI commands. Consequently, would there be a way to capture a WMF instead of a bitmap. Then, when displayed on screen, the application smooths the text. When printed, the text is not smoothed.

  2. MSDN Archive says:

    Our good friend Raymond Chen has been toying with a very similar idea for us, but unfortunately, when we tried to make it work, only the text was captured (the surrounding bitmap elements – the buttons, title bar, background, and so on) were lost.

  3. As a follow-up to Amy’s post on font smoothing , here’s a quick explanation of how you can turn off ClearType

Comments are closed.

Skip to main content