Bonjour,

Je développe une dll en vb.net qui doit créer un fichier binaire contenant le dessin de caractères de polices de texte.
Le dessin des caractères sélectionnés doit être en mode pixel, (pas vectoriel) et la taille doit correspondre à la taille de la police (par exemple 12).

J'utilise pour ce faire, les classes System.Drawing pour écrire le caractère sur un objet Graphics, associé à un objet Bitmap via la méthode DrawString.
J'ai défini la propriété TextRenderingHint à SingleBitPerPixelGridFit pour avoir un rendu de texte en pixel lissé. (Les dpi x et y sont fixés à 96).

Ensuite, sur l'objet Bitmap et sur toute la surface du caractère affiché j'effectue un GetPixel pour enregistrer les pixels dans le fichier binaire. (Le texte est écrit en noir, sur un fond blanc).

Cette méthode fonctionne parfaitement pour la plupart des caractères de la plupart des polices.

J'ai cependant un souci pour certains caractères, par exemple : " ou & de la police Arial Black 12. Les caractères sont mal définis, le caractère " n'est qu'un rectangle noir, le & a sa boucle supérieure bouchée.

Le problème ne vient pas du GetPixel, mais bien de la propriété SingleBitPerPixelGridFit avec un dpi fixé à 96.

Le souci, c'est que le simple fait d'augmenter le dpi, modifie naturellement la taille du caractère ce qui n'est pas souhaité. Les autres modes de TextRenderingHint ne peuvent pas convenir non plus à cause du traitement ultérieur du fichier binaire, pas de possibilité de traiter les couleurs, il faut que se soit du 1/0 par pixel...

Voilà j'aimerai savoir s'il existe des astuces en utilisant (soit des propriétés "scales" en augmentant les dpi, soit d'autres méthodes graphiques du framework ?)

Je vous remercie par avance de vos réponses.

J'espère avoir été assez clair dans l'exposition de mon pb.
Eric F