Anything (apart from GDI++) to improve font rendering on Windows?

16,958

Solution 1

GDI is a core part of the Windows system. It's been improved steadily throughout Windows' lifecycle, but the only way to "replace" it is to replace Windows itself. As an additional note, as part of the Windows system libraries, Windows itself now takes great pains to ensure that you don't drop in a replacement DLL for it -- there are cached versions which Windows will use (and replace your modified one with) if it detects tampering.

(This is very much a feature. If you were able to easily replace system libraries, that would be a major security hole.)

Font rendering in particular went from horrendous (Windows 1 - 3.0) to decent (Windows 3.0 to XP) to really good (Windows Vista and 7) as GDI evolved.

I don't think you'll find anything that really helps you out here. However, without replacing your entire graphics subsystem (which is essentially impossible), you can tweak ClearType to get you the best possible font rendering using the ClearType tuner from Microsoft.

Update

Per alex's comment on Andrew Moore's response, I have to admit that I misread the original post as well, and didn't see the second + there. I read it as GDI+, not GDI++, and apologize for that.

Based on what I'm reading of GDI++ (this is my first foray into it), I still recommend not going that route, and I continue to recommend the ClearType tuner. The reason remains the same, based on how I'm reading GDI++ worked, it seemed like a pretty risky proposition -- it worked exactly as I described above, where I mentioned ripping out and replacing a core piece of system functionality. While there may be no real downstream bad effects, you have to understand that implementing GDI and GDI+ while enhancing them means that you also need to implement every bug Microsoft kept around for backward compatibility -- no mean feat.

I'm keeping the answer around, because it seems the general community agrees with my assessment of the overall situation, even with the misreading of the original post.

Solution 2

Since I was not satisfied by John Rudy's answer, I googled a bit and found some alternatives to the now extinct gdi++ project:

  1. gdipp - Customizable Windows text renderers

  2. The Inkstone Project

  3. ezgdi - gdi++ alike advanced font rendering for 64-bit applications on Windows.

As both a Windows and OSX user, I find the ClearType rendering much inferior to the one used on OSX. And so I started to use gdipp - even considering some bugs, I still find it better than the default rendering engine used by windows. But, yes, it should be used cautiously - it is a hack.

Edit

As of september 2013, anybody interested about changing windows' font rendering should give Lưu Vĩnh Phúc's suggestion a try. In my defense, my answer is almost as old as gdipp, and Mactype simply didn't exist when I first wrote it... :-) (but be warned, it is still a hack).

Solution 3

GDI++ is old, very old; and hasn't been updated for several years. Therefore it doesn't work with many applications, especially ones that don't use the classic GDI API. Currently only Mactype is still in actively development. It works well with many modern programs that are not compatible with GDI++ and even supports applications that use the new DirectWrite API

mactype

Its source code can be found at https://github.com/snowie2000/MacType

What's new?

  • Win10 compatible
  • Traditional Chinese localization has been greatly improved thanks to GT Wang.
  • MultiLang system improved.
  • Better DirectWrite support thanks to しらいと.
  • FreeType 2.8.0 included.
  • Two-stage mactype loader introduced.
  • Separate DirectWrite parameter adjustment.
  • ClipboxFix is reverted to 0 by default to avoid some incompatibility issues.
  • Added Korea localization, thanks to 조현희

Solution 4

Download the application from http://www.cobyx.com/software/gdi/ (600KB only) . It works very well, requires no install, does not write to the registry etc. It has three inbuilt settings, marked in Japanese, strong, medium and light effect. With Windows XP SP3 it works like a breeze. I highly recommend.

Share:
16,958

Related videos on Youtube

Fladur
Author by

Fladur

C++ Programmer, worked with C++ since about 2006, since the start i really got interested in graphics development, so I decided to learn Direct3D, right now, I'm working on an engine, so that i can put all that i learned together. You can find it at its Sourceforge.net page. Currently trying to learn x86 assembly. Languages known C++ C#.NET Basic.NET

Updated on September 17, 2022

Comments

  • Fladur
    Fladur almost 2 years

    As GDI++ development has stopped... do any of you guys know a better GDI32 replacement for Windows? Should work on 32-bit Windows XP.

  • J. M. Becker
    J. M. Becker over 12 years
    I'm using gdipp, and it looks so much better than windows 7 default font rendering. I'm running windows 7 x64 (at work, would never use windows by choice)
  • Cray
    Cray over 12 years
    Have you anyone here tried the other two projects? Which one of 3 is better?