How to turn off ClearType and use whole-pixel anti-aliasing in Windows 7?

22

9

In Windows XP, you can have whole-pixel anti-aliasing by setting "Use the following method to smooth edges of screen fonts" to "Standard", or have sub-pixel anti-aliasing (for LCD monitors) by setting the option to "ClearType".

In Windows 7, I can no longer find a way to enable whole-pixel anti-aliasing, which gives the best readability on DLP projectors and CRT monitors (these screens do not follow the RGB or BGR pattern found in LCD screens). It is either ClearType or no anti-aliasing at all. I tried a 3rd party tool (ClearType Switch) but unchecking "Use ClearType" while leaving "Enable smooth edges for screen fonts" checked disables all forms of anti-aliasing.

How to turn off ClearType and use whole-pixel anti-aliasing in Windows 7?


Edit: According to Microsoft's blog article "Engineering Changes to ClearType in Windows 7", enabling "Smooth edges of screen fonts" in Performance Options and disabling ClearType with ClearType Tuner would give you grayscale font smoothing (i.e. what I want). However, this is simply not true. It disables all forms of anti-aliasing (or, in their terminology, it gives you bi-level rendering).

And to clarify, I'm talking about changing the system default setting, i.e. the one that would be used if the application do not specify its own.

netvope

Posted 2011-12-12T17:56:25.953

Reputation: 4 505

I wonder if Gabe's answer would help? After you turn off Cleartype.

– opsin – 2012-01-26T02:17:34.163

@opsin: it doesn't look relevant. Am I missing something? – netvope – 2012-01-26T08:48:13.327

If you use the Adjust ClearType wizard while using the projector, the following screens after you turn off ClearTYpe might possibly let you visually select the sub-pixel anti-aliasing option. – harrymc – 2012-01-26T09:17:02.220

@harrymc: In step "3 of 4", the right-most choice is whole-pixel anti-aliasing (i.e. what I want). However, if I turn on ClearType in the very beginning, Windows will continue to use sub-pixel anti-aliasing (disregarding my choice in the subsequent steps); and if I turn off ClearType in the very beginning, Windows will disable all forms of anti-aliasing. – netvope – 2012-01-26T09:55:21.690

When I turn off ClearType in the wizard I can in step "3 of 4" click the right-most choice. Do you mean that this has no effect? – harrymc – 2012-01-26T10:14:24.180

@harrymc: Correct, If I turn off ClearType in the very beginning of the tuning procedure, Windows will disable all forms of anti-aliasing in the end, regardless of my choices in step "3 of 4". – netvope – 2012-01-26T10:54:40.010

In this situation, what does Microsoft’s ClearType Tuner PowerToy for XP (which works in Windows 7) Advanced tab say about font smoothing?

– harrymc – 2012-01-26T11:09:54.323

@harrymc: It says "Standard", but it actually turns of all anti-aliasing. Here is the the screenshot. Be careful if you zoom/resize the image, which may smooth the font edges depending on the resampling method.

– netvope – 2012-01-26T11:37:23.013

Something to try : (carefully) replace C:\Windows\System32\DWrite.dll by the DWrite.dll wrapper. You could try first putting it together with the executable you use.

– harrymc – 2012-01-26T14:08:09.617

I see the sample problem with the ClearType wizard—it looks like it's going to set it to whole pixel antialiasing, but then everything pops back to sub-pixel. Argh. – jerwood – 2012-01-26T22:34:02.403

ClearType Switch worked wonderfully for me. It disabled cleartype everywhere except in IE 9. There is a page here that discusses telling the system Segoe font is unavailable and replacing it with Tahoma

– bobobobo – 2012-08-06T16:04:11.380

Answers

15

To use whole-pixel antialiasing:

[HKEY_CURRENT_USER\Control Panel\Desktop]

"FontSmoothing"="2"
"FontSmoothingType"=dword:00000001

Note that most Windows fonts are specifically set not to smooth1 at normal (7-13) sizes (fareast fonts even disable cleartype at those sizes).


To disable antialiasing altogether:
[HKEY_CURRENT_USER\Control Panel\Desktop]

"FontSmoothing"="0"
"FontSmoothingType"=dword:00000000


To reenable clear type:
[HKEY_CURRENT_USER\Control Panel\Desktop]

"FontSmoothing"="2"
"FontSmoothingType"=dword:00000002

Registry settings taken from an XP machine.


1Above 9 PPEM, anti-aliasing is turned off until the main stems of the font are around two pixels wide, which is around 13 to 20 points, depending on the typeface. (…) Two pixel wide stems are usually chosen because there is usually enough “backbone” of foreground colored pixels to keep the stem contrast high. (…) So although font smoothing was the default, most fonts, when displaying text at typical reading sizes, would render them bi-level.

kinokijuf

Posted 2011-12-12T17:56:25.953

Reputation: 7 734

2Thanks for the inspiration. Now I see that the problem is in the fonts, not in the ClearType configuration. For many fonts (Arial, Courier New, Georgia, Tahoma, Times New Roman, Verdana), whole-pixel anti-aliasing is disabled at normal sizes, but it kicks in at 14+pt, which is kind of lame. In my opinion, anti-aliasing is much more important at smaller sizes. In contrast, new Windows Vista/7 fonts (Calibri, Cambria, Candara, Consolas, Segoe UI) can have whole-pixel anti-aliasing at normal sizes. Perhaps Microsoft make it this way to promote their new fonts. – netvope – 2012-01-28T19:25:13.480

@netvope It’s probably for backward compatibility purposes. These fonts already existed before font smoothing was introduced in Win95, and there was not much space to both add antialiasing and retain existing font metrics. With cleartype, you get 3x horizontal space on the other hand. – kinokijuf – 2012-01-28T19:28:32.587

I could be wrong, but I think whole-pixel anti-aliasing worked for these fonts back in XP, at normal sizes. If so, the question becomes whether it is possible to force whole-pixel anti-aliasing for the old fonts. If whole-pixel anti-aliasing relies on some hinting from the fonts, Microsoft might have removed them in the old fonts to make it technically impossible. – netvope – 2012-01-28T19:28:54.397

No, it’s impossible. I’ve seen how MS fonts look on a mac, which ignores hinting, and they look horrible. – kinokijuf – 2012-01-28T19:31:04.173

@netvope I am currently using XP and the fonts look the same (no antialiasing). In fact, I obtained those numbers by experimenting. – kinokijuf – 2012-01-28T19:34:45.150

But do these settings work in Windows 7? That is what the questioner wants. – jerwood – 2012-01-31T23:08:35.663

@jerwood Yes. Cleartype hasn’t changed much. – kinokijuf – 2012-02-01T10:55:10.903

3

I have found a solution to this problem, and it is highly customizable. It's called MacType.

It allow you to change the font rendering of all programs that I tried, selectively or en masse.

It has a number of default profiles to choose from, or you can make your own with a wizard that allows you to fine-tune just about every aspect of the rendering, including of course the choice of grey scale rendering.

profiles

It even runs inside Sandboxie so you can try it without worry about what it might do to your system.

I've only been using it for ten minutes so I don't know how stable it is but for now I'm extremely happy to have found this.

Mr.Wizard

Posted 2011-12-12T17:56:25.953

Reputation: 1 309

This is a very interesting solution and in fact the only one which allows you to apply grayscale antialiasing system-wide on fonts of any size. Sadly, it has no effect whatsoever on Chrome or Firefox. They must be using different API calls, which are not being hooked. – blade – 2017-01-03T17:01:32.883

@blade I did not continue to use MacType. A quick search for "MacType Chrome" took me to a reddit comment: https://www.reddit.com/r/chrome/comments/4xh41g/mactype_font_smoothing_broken_after_chrome_52/d6fzq1v/ "Ah, directwrite explains it. That's essentially hardware acceleration for text rendering in this case. If they won't let you turn it off, you've got no way to force it through the pathway that leads to your patched GDI rendering the text on your screen."

– Mr.Wizard – 2017-01-03T23:45:17.860

1

According to this and this, MacType has experimental DirectWrite support, that needs to be enabled manually by adding DirectWrite=1 to a profile. But Chrome uses DW in a non-standard way, making it incompatible with MacType.

– blade – 2017-01-04T09:33:05.980

1

In addition to following @kinokijuf and if you want to avoid issues like this:

enter image description here

You'll also need to uninstall IE9, IE10, or IE11. Only IE8 will restore embedded web-control objects (the services description in the Extended view of the Service Control Manager) back to their original default non-font-smoothed counterparts.

Brian Chavez

Posted 2011-12-12T17:56:25.953

Reputation: 248

If we do have to uninstall IE9, 10, 11: How is this with Windows 10: Is it possible to deinstall Edge and install IE8? – Wogehu – 2019-02-22T13:51:45.030

No, I don't think it's possible downgrade to IE8 in Windows 10. Windows 10 is a mix of MetroUI / WPF, and those IE web-preview controls. So, even if you uninstall Edge and IE, you'd still have to figure out some way to remove the font smoothing from WPF and MetroUI built in apps. If you find out how let me know. Still searching. – Brian Chavez – 2019-02-24T01:58:57.960

1

– Brian Chavez – 2019-02-24T01:59:47.087

Thank you. The link of @Brian Chavez does not work, because it is doubbled. Here is the correct link: https://superuser.com/questions/1143356/cant-completely-eliminate-font-smoothing-in-window-10-with-font-substitution

– Wogehu – 2019-02-24T08:13:40.157

-1

Computer, Properties, Advanced system settings link in left side pane, Advanced, Performance, Settings, Visual Effects, Untick Smooth edges of screen fonts, OK.

enter image description here

user89272

Posted 2011-12-12T17:56:25.953

Reputation:

-1 This will turn off font smoothing altogether – kinokijuf – 2014-04-14T15:06:17.593