You can tune a font but you can’t tuna fish...

My name is Greg Hitchcock, and I’m a software architect in the Advanced Reading Technologies team. One of the purposes of this blog is to show the passion we have for improving the reading experience on-screen, and I hope that through the postings of different members of this team, this passion will show through.

I plan on providing some comments on the technology we use to improve on-screen reading as well as a little bit of the history around Microsoft and computer type—including early Windows and OS/2 work, why we use 96 DPI, the beginnings of TrueType (and the Font Wars), the development of Times New Roman & Arial, our Internet font work, the development of Tahoma, Verdana & Georgia, what is the interobang, the ClearType technology, and the new ClearType Font Collection.

As part of my first post, I thought I’d talk about ClearType tuning and what is behind this.

When I say ClearType tuning, I mean adjusting the look of ClearType text so that it is optimal for your preferences, your eyes, your display, and your environment. All of these factors play a role in your on-screen reading experience and comfort. There are two tools to help tune your ClearType experience. The first is through an on-line ClearType tuner available on the Microsoft web site at https://www.microsoft.com/typography/cleartype/tuner/Step1.aspx. This page requires you to download an ActiveX control that will setup an eye-chart like experience.

The second tool is a control panel applet which will stay in your control panel (under the appearance and themes heading.) This is essentially the same experience as the web tuner. This tuner can be downloaded from https://www.microsoft.com/typography/ClearTypePowerToy.mspx.

ClearType tuning works for any type of display device, from CRTs, LCDs, projection displays, &c. There is one critical factor to note when running on LCD displays—you need to be operating your display at its native resolution in order for any text or images to look optimal. Why is this? An LCD panel is actually made up of an array of liquid crystals—typically 3 × your x resolution by your y resolution. So a 1280 by 1024 display will have 3840 elements wide by 1024 elements high. (The 3 × is due to the colorized subpixels—which is part of how ClearType works.) If you would prefer to run your display at 1024 by 768 on this same 1280 by 1024 screen, there are two ways to do this. The first is to reduce the number of pixels you use on the display. This works fine, but this leaves a large margin of black around the edge of your screen— many users feel they are not getting the full value of their screen in this case. The other method involves scaling the smaller image to fit in the larger screen space. This technique distorts the whole screen image, leaving artifacts all over the image. Text, because of its small size, suffers dramatically when this is done. The ClearType technique also is significantly hampered by this approach. One way to determine if you are running at non-native resolution is to look at the following image:

If you see a smooth even tone to the image, then you are probably running at native resolution. If you see alternating bands of gray running vertically through the image then you are probably running at a non-native resolution. These bands are caused by scaling artifacts.

When you run the tuner, the first set of two images is used to figure out how the low-level subpixel structure is arranged if the display is an LCD panel. The LCD panel, as I mentioned above, is composed of pixels, and each pixel is typically broken up into colored subpixel elements. The most common orientation for landscape displays is the following:

Now the vast majority of LCD panels have the color order the same as above, from left to right; red, then green and followed by blue (or RGB.) But on a small percentage of screens (or if you flip the display by 180°) the order will be blue green red (BGR.) If we know this information we can optimize the ClearType experience. We default to RGB since it is by far the most common. For CRT displays or portrait oriented LCD panels this can sometimes make a difference.

On the next page of the tuner we show six panels. Essentially what has changed in each of the images is the level of gamma correction applied. The upper left has a gamma of 1.0 (or no gamma correction) and each one increases the gamma by 0.2 till the lower right panel of 2.0.

Gamma correction is important to ClearType because the RGB Decimation algorithms we use for ClearType work in a linear luminance space, but we need to correct for the luminance space of the display. Also, we found that some people prefer a different value of gamma correction than would be optimal for their display. Sometimes people are willing to make a tradeoff between text contrast and color fringing. At some point we might investigate how many users actually choose a value that differs from their actual display.

I may talk about gamma correction more in another post, but a nice backgrounder is available at Poynton’s Gamma FAQ.

One question you might ask is why we don’t just ask the display what its gamma characteristics are. There are several reasons for this. First, many older displays do not provide gamma correction or if they do, it is sometimes incorrect. With new EDID information from displays becoming available, we should be able to get accurate gamma information as well as subpixel orientation.

Hope this helps explain why ClearType tuning is important.

Greg

Comments

  • Anonymous
    October 24, 2005
    I see alternating lines, not a "smooth even tone", but I have a CRT, not an LCD.

    So what am I doing wrong? :-)

  • Anonymous
    October 25, 2005
    Why you don’t just ask the display what its gamma characteristics are?

  • Anonymous
    October 25, 2005
    The comment has been removed

  • Anonymous
    October 26, 2005
    And of course, the display doesn't know which angle you look at it, or whether there's daylight coming from the window just by it, or wether it's reflecting some light from elsewhere, etc...

  • Anonymous
    October 29, 2005
    Hey Greg! Good seeing you today :)

  • Anonymous
    November 03, 2005
    To more acurately use that image as a test. View it in Paint. If you view it in your browser, it may be scaled so that the logical DPI is 96dpi but the physical DPI can be something else. My screen is 134dpi which is set in the Display control panel, and I have the UseHR registry setting set for Internet Explorer which makes the logical DPI 96dpi so that DPI-unaware sites appear properly. Therefore, the image has the banding in Internet Explorer, but it does not have the banding in Paint.

  • Anonymous
    December 13, 2005
    Can you recommend any way of getting ClearType to work with a portrait oriented display?

  • Anonymous
    December 17, 2005
    Have to thank you for this little app. It makes reading on my CRT a more enjoyable experiance. When I used to have to do a research paper, and I knew I would be in front of a monitor for more than 12 hourse I would use my laptop. Now no more need!

  • Anonymous
    January 13, 2006
    I see vertical strips, and I'm DEFINITELY running at native resolution.

  • Anonymous
    February 25, 2007
    You can tune a font but you can’t tuna fish... :D

  • Anonymous
    June 29, 2010
    Is there anything that can be done (currently and/or theoretically) for rotating a display into portrait mode? I would prefer to view, for example, source code in portrait mode on an auxillary monitor, but I believe that kills the benefits of Clear Type.