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 http://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 http://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.