Odpowiedzi:
GDI jest podstawową częścią systemu Windows. System ten był stale udoskonalany przez cały cykl życia systemu Windows, ale jedynym sposobem na jego „zastąpienie” jest zastąpienie samego systemu Windows. Jako dodatkową uwagę, jako część bibliotek systemowych Windows, sam system Windows dokłada teraz wszelkich starań, aby nie upuścić zastępczej biblioteki DLL - istnieją wersje buforowane, których będzie używać system Windows (i zastąpią zmodyfikowaną bibliotekę ), jeśli wykryje naruszenie.
(Jest to bardzo ważna cecha. Gdybyś był w stanie łatwo wymienić biblioteki systemowe, byłaby to poważna dziura w zabezpieczeniach.)
Renderowanie czcionek zmieniło się z przerażającego (Windows 1 - 3.0) na przyzwoite (Windows 3.0 na XP) na naprawdę dobre (Windows Vista i 7) wraz z rozwojem GDI.
Nie sądzę, że znajdziesz tu coś, co naprawdę ci pomoże. Jednak bez wymiany całego podsystemu graficznego (co jest w zasadzie niemożliwe), to można dostosować ClearType, aby uzyskać możliwie najlepszą czcionki renderowania przy użyciu tuner ClearType z firmy Microsoft.
Na podstawie komentarza Alexa do odpowiedzi Andrew Moore'a muszę przyznać, że również źle przeczytałem oryginalny post i nie widziałem drugiego + tam. Przeczytałem to jako GDI +, a nie GDI ++ i przepraszam za to.
W oparciu o to, co czytam w GDI ++ (jest to moja pierwsza wyprawa), nadal polecam nie iść tą trasą i nadal polecam tuner ClearType. Powód pozostaje ten sam, w zależności od tego, jak czytam GDI ++, działało, wydawało się to dość ryzykowną propozycją - działało dokładnie tak, jak opisałem powyżej, w którym wspomniałem o rozerwaniu i zastąpieniu podstawowego elementu funkcjonalności systemu. Chociaż może nie być żadnych rzeczywistych złych efektów, musisz zrozumieć, że wdrożenie GDI i GDI + przy jednoczesnym ulepszeniu ich oznacza, że musisz także zaimplementować każdy błąd, który Microsoft zachował w celu zapewnienia kompatybilności wstecznej - to nie lada wyczyn.
Trzymam odpowiedź, ponieważ wydaje się, że ogólna społeczność zgadza się z moją oceną ogólnej sytuacji, nawet z błędnym odczytaniem oryginalnego postu.
Ponieważ odpowiedź Johna Rudy'ego nie była dla mnie satysfakcjonująca , trochę googlowałem i znalazłem alternatywy dla wygasłego projektu gdi ++:
gdipp - dostosowywane renderery tekstu Windows
ezgdi - gdi ++, podobnie jak zaawansowane renderowanie czcionek dla 64-bitowych aplikacji w systemie Windows.
Jako użytkownik systemu Windows i OSX uważam, że renderowanie ClearType jest znacznie gorsze niż w systemie OSX. I tak zacząłem używać gdipp - nawet biorąc pod uwagę kilka błędów, nadal uważam, że jest lepszy niż domyślny silnik renderujący używany przez Windows. Ale tak, należy go używać ostrożnie - to hack.
Edytować
Od września 2013 r. Każdy zainteresowany zmianą renderowania czcionek systemu Windows powinien wypróbować sugestię Lưu Vĩnha Phúca . W mojej obronie moja odpowiedź jest prawie tak stara jak gdipp, a Mactype po prostu nie istniał, kiedy go napisałem ... :-) (ale ostrzegam, to wciąż hack).
Pobierz aplikację ze strony http://www.cobyx.com/software/gdi/ (tylko 600 KB). Działa bardzo dobrze, nie wymaga instalacji, nie zapisuje do rejestru itp. Posiada trzy wbudowane ustawienia, oznaczone w języku japońskim, mocny, średni i lekki efekt. Z Windows XP SP3 działa jak wiatr. Gorąco polecam.
GDI ++ jest stary, bardzo stary; i nie był aktualizowany od kilku lat. Dlatego nie działa z wieloma aplikacjami, zwłaszcza tymi, które nie używają klasycznego interfejsu GDI API. Obecnie tylko Mactype wciąż aktywnie się rozwija. Działa dobrze z wieloma nowoczesnymi programami, które nie są kompatybilne z GDI ++, a nawet obsługuje aplikacje korzystające z nowego API DirectWrite
Jego kod źródłowy można znaleźć na stronie https://github.com/snowie2000/MacType
Co nowego?
- Kompatybilny z Win10
- Tradycyjna chińska lokalizacja została znacznie ulepszona dzięki GT Wang.
- Ulepszony system MultiLang.
- Lepsza obsługa DirectWrite dzięki し ら い と .
- Zawiera FreeType 2.8.0.
- Wprowadzono dwustopniowy moduł ładujący mactype.
- Oddzielna regulacja parametrów DirectWrite.
- ClipboxFix jest domyślnie przywracany do 0, aby uniknąć problemów z niekompatybilnością.
- Dodano lokalizację Korei dzięki 조현희