-
unicode et cbuilder6
Bonjour à tous,
J'ai créé grâce à l'utilitaire eudcedit de windows des caractères spéciaux associés aux polices, que je récupère avec charmap dans un composant Richtext de CBuilder6 cela marche.
Mais je voudrai récupérer ces caractères unicode U+E000, etc pour les écrire sur un Canvas à l'aide de TextOut(int x, int y, AnsiString ch).
Autrement dire comment grâce au code U+E000 obtenir une AnsiString ayant ce caractère, l'afficher et l'imprimer???
Merci d'avance à tous
-
Essaie d'utiliser l'API de Windows directement. J'ai aucune idée si cela va fonctionner, mais tu peux tenter ta chance.
Pour dessiner un texte sur un Canvas utilise DrawTextW ou DrawTextExW.
Il est à noter le W à la fin de chacune des fonctions pour l'utilisation de caractères étendus (wchar_t).
-
unicode
Merci à crayon,
J'ai trouvé ton conseil ce matin et j'ai essayé ça marche, j'ai perdu une semaine à me debattre avec les aides de CBuilder et différents sites d'internet et je n'y ai pas pensé!!!.
Voici le bout d'essai à affiner (je vais mettre une ToolBar dans mon application de manière que chaque bouton me donne le caractère que j'ai construit avec eudcedit):
(LECANVAS est le canvas d'une de mes fiches)
wchar_t charArray5 [3] = {L'\xE000',L'\xE001',L'\x03A9'};
HDC hDC=LECANVAS->Handle;
RECT rc; rc.left=100;rc.top=100;rc.bottom=200;rc.right=200;
DrawTextW(hDC,&charArray5[1],1,&rc,DT_CENTER);
Merci encore!!