Okay, so this one actually bothers me quite a deal in the Windows 8 consumer preview: the fonts in Metro look fuzzy – they look like fonts on Mac OS X. Because of the Mac OS X resemblance, I had assumed that Metro switched to a shape-accurate rendering method, like Mac OS X uses, but as it turns out, it’s a little less exotic than that.
Up until very recently, Apple and Microsoft had very different approaches to rendering fonts. Because of Apple’s presence in the publishing industry, Mac OS X focusses on maintaining the original shapes of the glyphs of typefaces, even if that means additional blurriness. Microsoft’s ClearType, on the other hand, optimises glyphs for on-screen readability, forcing them into the pixel grid. This distorts some of the shapes.
Since I’m reading on a computer screen, I prefer the ClearType rendering method. However, it usually only takes a few minutes to get used to Mac OS X’s shape accurate rendering, and it doesn’t actually bother me. In the end, it’s the consistency that matters – not the actual method used. Mix the two on the same display, and one of the two methods will start to annoy you (depending on your preference).
In Windows 8’s Metro interface, fonts were fuzzy, while on the desktop, they’re razor ClearType sharp as ever. I assumed this meant Microsoft had switched rendering engines (or tweaked the ClearType algorithms) to produce accurate shapes, readying itself for displays with high DPIs. In addition, although I’m not sure, I think shape-accurate rendering is a better fit for the kind of smooth zooming you see on tablets.
As Long Zheng found out, though, ClearType as a whole isn’t missing – only its most defining feature is not available: subpixel RGB optimisation. This technique uses the subpixels in LCD displays to improve glyph rendering, but by using only the red, green, and blue subpixels, this causes the edges of characters to display tiny coloured fringes. Some people find these coloured fringes incredibly annoying.
Without this technique, ClearType is reduced to more basic grayscale rendering, which produces – in my view – sub-optimal rendering. However, unlike what I initially assumed, this is not the same as the kind of shape-accurate rendering Apple employs.
There are several possible reasons for this (the fact that tablets can be rotated easily comes to mind, making it hard for ClearType to adjust to the different subpixel orientation), but I’m sad to see ClearType take a few steps back like this. Font rendering on Metro suffers for it.
So THAT’S what’s wrong with fonts in W8.
Sub-pixel rendering makes fonts look wonderful on LCD screens, and the color fringing is barely noticeable. It’s absence is immediately apparent to me, however.
It’s little things that bug me. The Start Screen is very useful, but poor font rendering almost makes me switch back.
As long as the subpixels are horizontally-aligned and RGB ordered.
Turn a screen 180 degrees and your subpixels are BGR ordered, which doesn’t look that good with Cleartype.
Turn it 90 degrees and your subpixels are vertically aligned, which looks bloody awful with Cleartype.
Since people are going to be using their tablets any way up Microsoft made the right choice in turning off subpixel anti-aliasing.
It really wouldn’t have been difficult for Microsoft to check orientation and enable/disable Cleartype. Or atleast enable Cleartype in x86/PCs & disable it on ARM/tablets.
This is essential, because at least at the beginning most users will be using Windows 8 on a desktop/laptop, which will all be used in a single orientation. Also, most of these users will have already gotten used to the sharp text in Windows 7, and will see Windows 8 text rendering as a step back.
Haha.. I was going to post the same reply as yours and the ones below. There’s no difficulty (beyond some switch statements) to have the ClearType work in any orientation. Admittedly, whatever the 90-degree-off ‘sideways’ orientation is would have the smoothing applied vertically on the font instead of horizontally, but that would still be better than none, and for the 2 ‘normal’ orientations it would work just like it has for years.
Well, no. That isn’t what happens. Pixels are still drawn in the same fashion. Use your video driver to rotate the screen 90 degrees. ClearType still works. All that happens when the screen is physically rotated is that the glyps are rotated.. Actual subpixel calculations occur as before. The fonts are rotated, but the rendering doesn’t need to be.
ClearType is already capable of rendering correctly to BGR subpixel order. The rare screen BGR screen looks terrible with the default settings, but the ClearType Tuner can be used to fix it.
And, for that matter, my WinMo 6.5 phone could do:
R
G
B
as well as:
B
G
R
and, of course, RGB and BGR.
So, no excuse, MS.
No, you nincompoop. Windows 8 & metro is for desktops, laptops, and tablets. I’m not rotating my screen on my laptop, why should I suffer?
Also, you make the DPI retina display levels for the tablet and you aren’t going to notice any issue with cleartype. I mean, you would expect MS win 8 arm tablets to try and compete with the ipad, right?
Because some of us do rotate our screen.
One of the two displays for my Desktop has a ring mount so I can rotate it in either direction. It comes in very useful for read PDFs (legal size formatted mostly, but even letter size fit the screen better) and camera pictures where I am photographing tall structures (ie hold the camera on it’s side).
As for my laptop (1600*900 screen), sitting on it’s side again makes most PDFs easier to read, just plug in a mouse, set your reader to rotate 90 degrees and scroll thru the document with the wheel.
Those are edge cases. Optimizing for edge cases is fine, but it should never compromise the common cases.
What he said ^
At least, make an easy to find config option, and everyone’s happy.
It looks fine, if cleartype is expeccting / is told that it is dealing with BGR. A tablet is going to know which way it is oriented (so it can put everything right side up), it could tell cleartype to switch to BGR
Right, and since Win8 supports auto-rotation with an accelerometer, that will occur more frequently on tablets.
Not in W8, but in Metro-W8. Otherwise Control Panel\Appearance and Personalization\Display -> Adjust ClearType text.
Of course. I had forgotten that I meandered into the ClearType tuner and changed it. Well, I changed it back already. Much nicer.
Is it possible to adjust the font rendering in the control panel? I am not a Windows user, but it seems like there should be a way to adjust the font rendering.
Windows 8 makes it harder to get into the control panel. Many options are missing.
Cleartype is a killer feature of Windows. I do hope it returns.
by harder, I think you mean “different” and options are missing..however, it is a preview OS.
I gave them a pass on a lot of things. However, when I first install windows, one of the first things I do is check device manager to make sure all of my hardware detected correctly. This was particularly important this time as it was a preview version and I had to install it on a beater I had in the basement. It took me three tries to get it to install and didn’t run under VMWare Fusion 3 on OS X. (HAL errors)
I don’t think hiding the control panel (or whatever it’s equivalent will be) in a consumer preview is a great idea. By this point, I assume they’re fixing bugs and the big issues have been sorted out. It’s not an internal beta after all. It’s not even a developer preview. I expect hardware support gotchas and even bugs with their web services listed on the start screen, but i think they should have the OS layout effectively done by now.
I have to admit I didn’t spend a lot of time looking and found a workaround to get to it from the desktop view. I loaded the display properties and then went up to the main category list and then got to the device list. It had detected everything except a proprietary smbus and the sound card correctly on my Intel DP65LT motherboard.
Use search on the Start menu/screen. I’ve been typing “Device Manager” since Vista. (Or actually, “Dev” is enough.)
Ever since Device Manager and a lot of the other cpanel applets got buried one level down from the main UI, I’ve found it more efficient to search for them by typing, than to actually go around looking for them. Now that it’s buried three levels down in Windows 8, this habit has paid off.
The same is true of Network Adapters, and all sorts of other cpanel applets that keep getting moved around.
Just switch to the desktop and use win+r to run the control panel manually.
Yes, we are in 2012.
They didn’t hide it very well. Place the mouse cursor to the right side of the screen, the Bar shows itself, and click on the gear for settings, then select Control Panel. A different way to get to it, but not hidden by any means.
To each his own. I find the color fringing from sub-pixel rendering VERY noticeable, so I always explicitly switch my systems to grayscale-only.
I definitely agree that consistency and choice are important though.
If you have a problem with color fringing, that probably means that you are using an LCD display and your operating system does not have the LCD filter patches. Many Linux distributions do not include the LCD filter patches due to licensing issues, I believe.
It is actually pretty easy to apply the LCD patches. Just google “Debian font rendering” and replace “Debian” with whatever OS you are using for instructions.
I use Debian squeeze. In that case, I had to update Iceweasel to the latest version via Debian Backports and replace the fonts folder in the /etc/ directory. It took me about half an hour to do that. It was worth it though. Sub pixel rendering looks much better than greyscale when you have the LCD filter patches.
I can’t speak for GNOME, but KDE has this built into it’s control panel. So it’s a simple mouse button click to turn on or off.
This is not what he is talking about. This is desktop environment independent issue, subpixel font rendering is available and there is an option, but it’s horrid without filter patches (horrible colour fringing, hinting), which are for freetype. I am KDE user myself and I had to get freetype from separate repo to have nicely looking fonts on my distro.
As far as I know Ubuntu have these patches enabled by default. I’m not sure what is the current state of this patent issue and if it’s still present.
Edited 2012-03-13 20:34 UTC
Ahh I see.
What distro is it you have? Arch must ship those patches as well then by the sounds of it (or my eye sight has deteriorated massively over the last few years)
I don’t know much about font rendering but could it be possible for us in the future to have a high enough DPI to make all these font related problems to just go away?
I hope so, and it looks possible. The other manufacturers seem to follow whatever Apple does, so tablets and mobile phones are already going for higher resolutions, and in addition LCD prices have become very low lately, with even 22″ IPS screens being quite affordable these days.
They were going for higher resolutions even without Apple influence:
http://en.wikipedia.org/wiki/List_of_displays_by_pixel_density#Devi…
However the release of the 3rd gen iPad should hopefully kick start those other manufacturers lagging behind on the display race.
it will go away in the future.
when you take printing as a reference, 600 dpi are enough to avoid aliasing-issues
on large high-resolution screens we have more than 200dpi today
on realy small ones we are already beyound 2k dpi
it’s only a matter of time till scaling-problems are solved (and we have the bandwidth to drive those screens)
But doing sub-pixel rendering will still increase the smoothness even if it’s smooth to begin with?
Personally I prefer the Adobe and Apple sub-pixel rendering.
Maybe Adobe slightly above Apple. But the most interesting is either against freetype or cleartype.
But if you are able to render a single character with one million pixels (1000×1000) then isn’t sub-pixel rendering just a waste of CPU cycles?
Your desktop is always one way up. A tablet can be rotated in any direction.
Cleartype looks pretty dodgy unless the subpixels are horizontally aligned. If you try using it with a monitor turned 90 degrees (like I do) it doesn’t look so flash.
Edited 2012-03-13 02:04 UTC
This can be adjusted for in W7.
That is easily adjusted for. You can even sub-pixel render to pen-tile displays and take advantage of the 2 dimensional sub-pixel layout.
For a fascinating look at the difficult birth of ClearType on Windows, and its jaded co-creator, have a listen to this:
http://traffic.libsyn.com/devlife/205a-Typo.mp3
Such a shame to see MS killing it off yet again!
P.S. The ClearType story is in the second half of the above podcast.
Edited 2012-03-13 03:13 UTC
In correctly rendered pixel there are no color fringes.
Both of the following are equivalent in every respect:
x x R G B x (white)
x B R G x x (white)
It gets more complicated in groups of pixels
x R G B x x x R G B x (white, black, white) – good
x x G B R x B R G x x (white, magenta, white) – not good
x r G B r g b R G b x (white, gray, white) – good
x x g B R G B R g x x (white, white) – good
Which really means that hinting shouldn’t be used for “stretching” or “shrinking” single pixels, neither white nor black, and that some subpixel locations are not available.
Renderers, which are aware of these limitations and respect them can output images, which have no color fringes at all.
saying “razor ClearType sharp as ever” is a bit funny to me – I’ve always found it extremely blurry, hard to read and causing headache after only a few minutes of trying to read text displayed with CT. On the other hand – CT and any other smooth technique turned off – razor sharp fonts pleasant to read
Both Algorithms are ClearType.
There is an interview with the creator of ClearType, he claims the differences are because Apple didn’t implement it correctly.
http://www.thisdeveloperslife.com/post/2-0-5-typo
Apple got ClearType patent as part of the Apple-Microsoft cross licensing deal.
Edited 2012-03-13 09:31 UTC
Odd because Apple’s implementation is arguably superior in it’s results. Either that or Apple’s fonts just look better to begin with, at least to my sensibilities.
Like the Joel on Software article, I am a Windows guy and I actually think the Apple fonts look fuzzy … I think it is more what you are used to looking at.
Thought I have used ClearType tuner. In XP I don’t think some of the fonts were supposed to be use With only cleartype enabled … Consolas doesn’t render correctly without cleartype.
http://en.wikipedia.org/wiki/Consolas
and
http://www.codinghorror.com/blog/2005/08/consolas-and-cleartype.htm…
Edited 2012-03-13 11:15 UTC
No, Apple’s solution is worse in every meaningful way. It only looks better if your squint or have a very high-DPI screen. Fortunately though Apple are moving to very-high DPI screens, where they are no longer handicapped by their poor font-rendering.
Edited 2012-03-16 19:06 UTC
I would like to point out that greyscale rendering is not ClearType.
Greyscale rendering was “font smoothing” option in XP.
Cleartype is about using the 3 subpixels in any TFT display to triple the effective DPI of your monitor.
Tripling the DPI is a bit of a bold statement. First, it only works in one direction. Second, it only works when displaying black on white or vice versa. And then, with the rise of OLED and the technological issues associated with emitting blue light, PenTile arrangements start to become popular, effectively negating the advantages of subpixel rendering…
Edited 2012-03-13 18:51 UTC
I know it isn’t that exactly, but maybe you would like to listen to that developers life talk by the guy that created the technology, that I linked. He explains it better than I.
BTW the Podcasts in general are really good BTW and really open you eyes to how other developers think. I think you may get something out of it Neolander … I certainly have. Some of the ideas have had profound changes to how I think about Software Development in general.
I know it doesn’t work in other circumstances other than the most generic … but are you supposed to do? They tried to make it better for most use cases.
Edited 2012-03-13 19:24 UTC
To be honest, I understand the point between technologies like ClearType and it seems that they have been successful to some extent so I also agree that they deserve praise for that.
What I was criticizing here was that you were ignoring a bit the hackish nature of subpixel rendering to turn it into a bit more of a magical product at an unbelievable price than it actually is.
As for podcasts, I agree abut the enlightening nature of listening to other devs in a field, but I tend to significantly prefer written media on technical subjects. They allow you to skip the parts that you already know, read difficult paragraphs slowly or several times, and easily stop somewhere and get back to that point later. Then I also find it easier to focus for extended periods of time on a bunch of text than on moving pictures. And finally, there are more people out there who know how to write than people who know how to make an enjoyable audio or video show.
Then of course, there are exceptions like TED talks. These guys just excel at presenting complex stuff on a stage.
You try to be nice on here and you have it slapped back in your face.
Edited 2012-03-14 09:15 UTC
Yes, and the reason that they’re doing grayscale rendering of text is that there’s a tremendous amount of horizontal panning going on here for the Start screen. ClearType depends upon very precise alignment of subpixels. You can’t just pan the content left or right without redoing the ClearType rendering. But that will reduce the efficiency of panning animation. So, clearly, MS opted for performance/efficiency versus optimal quality; and, in my opinion, that was the right call. The Start screen was designed to be active and dynamic, not to have a static layout.
I think it’s probably gone for good. ClearType is a hack. A fairly clever one, and it works reasonably well, but it’s not a general solution to text rendering.
There are a number of limitations to the technique, and Windows 8 runs into just about every one of them.
1 – It only works with a standard RGB stripe sub-pixel layout. For any other sub-pixel layout, it doesn’t work at all. The standard RGB stripe layout is universal on desktop and laptop screens, but not phones or tablets.
2 – It doesn’t work if the sub-pixels are rotated by 90 degrees. The idea behind ClearType is to make the vertical lines in text appear sharper. Making the horizontal lines sharper doesn’t improve readability at all.
3 – It doesn’t work if you can flip the screen by 180 degrees either. The sub-pixels are now backwards.
4 – It only really works well with black text on a white background, or white text on a black background. Metro tends to have coloured backgrounds.
5 – It doesn’t work if you can rotate or scale the text. If you rotate the text, the entire idea behind ClearType (making the vertical lines in text look sharper) breaks down. If you scale it, you screw up the hinting. Metro does lots of this too.
6 – It’s incompatible with alpha blending (transparency). Metro does plenty of this too. In fact, so does Windows 7 – if you look at the clock on the taskbar, you’ll notice that it’s using standard anti-aliasing, rather than ClearType.
All that said, from the documentation, it looks like it’s still present, but the API falls back to standard anti-aliasing when ClearType won’t work. Which, from the looks of the Windows 8 screenshots, appears to be most of the time.
It was because most displays at the time of it creation were quite low res (1024×768 was standard laptop res in 2000 when ClearType prototype was created).
I think with the 300DPI ish screens it doesn’t really need it.
I can’t stand to use a display with ClearType enabled. It’s one of the first things I disable when I’m using Windows. I know a lot of people like it, that’s fine, as long as Microsoft provides an easy way to turn it off.
Think about the ARM hardware that Metro will run on. Most of those displays won’t be using LCDs at all – they’ll be using (S)AMOLED screens that use a pentile subpixel layout instead of LCD’s rectangular subpixels. This would make ClearType’s RGB hinting worse than useless, as it would make fonts less readable.
GOOD. clear type is a bad idea. especially with screens getting more resolution.. and displays being rotatable. sometimes i have to use my iPad at work, and i have to use citrix to connect to windows sometimes. and i have to rotate the screen till clear type looks correct.
i always thought clear type looked bad anyways. theres color fringing on text, and i know it’s not very noticeable, but i still notice it, every single time.
The color-fringes are either all in your head, or your have setup clear-type incorrectly for your screen*
I think both options are equally likely.
* If you have a screen with clean pixel separation or alternative subpixel layout, then clear-type will not work properly and can give color-fringes, in that case you need to use the grayscale cleartype option as appropriate for your screen.
Edited 2012-03-16 19:11 UTC