URL: https://linuxfr.org/forums/programmation-c--2/posts/affichage-de-caract%C3%A8res-grecques-utf-8-dans-xorg Title: Affichage de caractères grecques UTF-8 dans Xorg Authors: ilip Date: 2011年11月10日T11:43:54+01:00 Tags: debian Score: 3 Bonjour, Je travaille sur Debian Squeeze et je cherche a faire une application multilingue, Français et Grec. Pour les caractères Grecs, on peut utiliser la norme iso8859-7. C'est la table des caractères Grec moderne sur 8 bits (255 caractères). On peut utiliser aussi la norme UTF-8 rassemble tout les caractères internationnaux dans 4*8bits. J'ai fais un premier programme en C encodé en UTF-8, et je le lance à partir d'une console SSH avec PuTTY configuré en UTF-8 : printf("test FR : bonjour\n"); printf("test GR : ΤΕΣΤΠΛΔΦΩΖ\n"); Les caractères grecs sont bien affichés dans la console PuTTY. Ensuite j'ai fait un programme qui affiche ces textes dans Xorg avec Xlib : ```c #include #include int main(void) { Display *d; Window w; XEvent e; char *msg="ΟΑΣΔΦΖΧΨΩΒzeΒ"; d = XOpenDisplay(NULL); if (d == NULL) { fprintf(stderr, "Cannot open display\n"); exit(1); } int s; s = DefaultScreen(d); w = XCreateSimpleWindow(d, RootWindow(d, s), 10, 10, 200, 200, 1, BlackPixel(d, s), WhitePixel(d, s)); XMapWindow(d, w); XSelectInput(d, w, ExposureMask); while (1) { XNextEvent(d, &e); if (e.type == Expose) { XDrawString(d, w, DefaultGC(d, s), 10, 20, msg, strlen(msg)); } } XCloseDisplay(d); return 0; } ``` Quand je le lance, Xorg n'affiche pas correctement les caractères grecs. J'ai fait le même test avec la librairie Qt et j'ai le même résultat. Je pense que ça vient des polices utilisées par Xorg. Mais même en utilisant la police Unifont l'affichage n'est pas correct. GNU Unifont : tous les codes de caractères imprimables d'« Unicode 5.1 Basic Multilingual Plane (BMP) » (Plan de base multilingue Unicode 5.1) J'ai essayé aussi une police en version iso8859-7 : -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso8859-7 Toujours le même problème.

AltStyle によって変換されたページ (->オリジナル) /