Le dessin du texte .NET

Je suis en train de faire quelques tests sur le dessin du texte .Net et j'ai eu les résultats suivants.

Le dessin du texte .NET

Tous les cas, utilisez la valeur par défaut de Windows Vista/7 police: Segoe UI, 9

Comme vous pouvez le voir, il y a une différence entre la deuxième chaîne, et les autres (c'est de moins bonne qualité, et de l'anti-alias est différent). J'ai essayé de configurer l'anti-alias et le lissage de la mode dans le Graphics objet, sans aucun résultat.

Est-il possible de dessiner du texte avec la Graphics.DrawString et obtenir la même qualité que les autres méthodes?

Merci d'avance.


EDIT: j'ai passé en revue le code avec Réflecteur. J'ai réalisé que Graphics.DrawString utilise gdiplus.dll appelant la méthode GdipDrawString() et TextRenderer.DrawText utilise user32.dll appel DrawTextExW et DrawTextExA.

Tout commentaire à ce sujet?

utilisez-vous exactement de la même police dans tous les cas ?
Oui, voir mes modifications
Vous êtes en manque juste la AntiAlias option...
Eu ce même problème sur Windows XP. Ayant ClearType activé a été à l'origine du problème. (Vous perdez les "bords", de sorte que la police bord devient "polyédrique". Je ne sais pas si vous pouvez l'activer ClearType désactivé dans Windows 7.
J'ai utilisé: //'Seulement anti-alias fonctionne lorsque l'utilisateur a activé clair-type. g.TextRenderingHint = Drawing.Text.TextRenderingHint.AntiAliasGridFit

OriginalL'auteur Daniel Peñalba | 2011-09-01