25

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.

Glorfindel
  • 4,089
  • 8
  • 24
  • 37
netvope
  • 5,215
  • 14
  • 57
  • 77
  • I wonder if [Gabe's](http://stackoverflow.com/questions/5208676/windows-7-gdi-acceleration-mystery-can-we-enable-it-programmatically-yes-we-k) answer would help? After you turn off Cleartype. – opsin Jan 26 '12 at 02:17
  • 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 Jan 26 '12 at 09:17
  • @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 Jan 26 '12 at 09:55
  • 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 Jan 26 '12 at 10:14
  • @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 Jan 26 '12 at 10:54
  • In this situation, what does Microsoft’s [ClearType Tuner PowerToy for XP](http://www.microsoft.com/typography/ClearTypePowerToy.mspx) (which works in Windows 7) Advanced tab say about font smoothing? – harrymc Jan 26 '12 at 11:09
  • @harrymc: It says "Standard", but it actually turns of all anti-aliasing. Here is the [the screenshot](http://img15.imageshack.us/img15/9831/cleartypestandard.png). Be careful if you zoom/resize the image, which may smooth the font edges depending on the resampling method. – netvope Jan 26 '12 at 11:37
  • Something to try : (carefully) replace `C:\Windows\System32\DWrite.dll` by the [DWrite.dll wrapper](http://www.softwareninjas.ca/dwrite-dll-wrapper). You could try first putting it together with the executable you use. – harrymc Jan 26 '12 at 14:08
  • 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 Jan 26 '12 at 22:34
  • ClearType Switch worked wonderfully for me. It disabled cleartype everywhere except in IE 9. There is a page [here](http://answers.microsoft.com/en-us/windows/forum/windows_7-desktop/disable-all-font-smoothing-in-windows-7-ie/f180e803-3317-4433-8fd2-63aadaecc2d2) that discusses telling the system Segoe font is unavailable and replacing it with Tahoma – bobobobo Aug 06 '12 at 16:04

4 Answers4

16

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.

Glorfindel
  • 4,089
  • 8
  • 24
  • 37
kinokijuf
  • 8,175
  • 9
  • 54
  • 97
  • 2
    Thanks 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 Jan 28 '12 at 19:25
  • @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 Jan 28 '12 at 19:28
  • 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 Jan 28 '12 at 19:28
  • No, it’s impossible. I’ve seen how MS fonts look on a mac, which ignores hinting, and they look __horrible__. – kinokijuf Jan 28 '12 at 19:31
  • @netvope I am currently using XP and the fonts look the same (no antialiasing). In fact, I obtained those numbers by experimenting. – kinokijuf Jan 28 '12 at 19:34
  • But do these settings work in Windows 7? That is what the questioner wants. – jerwood Jan 31 '12 at 23:08
  • @jerwood Yes. Cleartype hasn’t changed much. – kinokijuf Feb 01 '12 at 10:55
4

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
  • 1,359
  • 9
  • 20
  • 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 Jan 03 '17 at 17:01
  • @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 Jan 03 '17 at 23:45
  • 1
    According to [this](https://github.com/snowie2000/mactype/issues/197) and [this](https://github.com/snowie2000/mactype/issues/215), 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 Jan 04 '17 at 09:33
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
  • 286
  • 2
  • 5
  • 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 Feb 22 '19 at 13:51
  • 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 Feb 24 '19 at 01:58
  • 1
    The best way I've found for Windows 10 is this: https://superuser.com/questions/1143356/cant-completely-eliminate-font-smoothing-in-window-10-with-font-substitutionhttps://superuser.com/questions/1143356/cant-completely-eliminate-font-smoothing-in-window-10-with-font-substitution But replacing SegoUI in Win10 messes up some symbol rendering in UI like Task Manager. =/ – Brian Chavez Feb 24 '19 at 01:59
  • 1
    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 Feb 24 '19 at 08:13
0

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

Wogehu
  • 103
  • 3