IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GLUT Discussion :

Est ce possible d'afficher les accents??


Sujet :

GLUT

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    68
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 68
    Points : 46
    Points
    46
    Par défaut Est ce possible d'afficher les accents??
    Bonjour,

    Je developpe une application qui utilise GLUT, et j'aimerais savoir s'il est possible d'afficher les accents : é, è, à, ç???
    Car lorsque j'essaye d'afficher un de ces caractères ca ne marche pas.

    Merci.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 119
    Points : 106
    Points
    106
    Par défaut
    Tu as essayé avec quelle fonction ?

    Par exemple, glutBitmapCharacter est capable d'afficher les caractères accentués que tu as cités.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 119
    Points : 106
    Points
    106
    Par défaut
    Par contre glutStrokeCharacter ne semble pas réussir à les afficher donc si c'est celui-là que tu utilises ...

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    68
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 68
    Points : 46
    Points
    46
    Par défaut
    En effet mon programme utilise la fonction : glutStrokeCharacter

    La fonction glutBitmapCharacter prend quoi comme paramètres stp??

    Merci.

  5. #5
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Points : 4 240
    Points
    4 240
    Par défaut
    un petit coup de google aurait évité que tu pose la question, m'enfin bon..


    http://www.opengl.org/resources/libr...c3/node76.html

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    68
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 68
    Points : 46
    Points
    46
    Par défaut
    En fait voici l'utilisation que j'ai de la fonction : glutStrokeCharacter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    deque<string>	dq_logs;		// collections des messages à afficher
    for(unsigned short i=0; i< dq_logs.size(); ++i)
    {
    	glColor4f(0.0, 0.0, 0.0, f_alpha);
    	renderStrokeCharacter(0,0,0,GLUT_STROKE_ROMAN, dq_logs[i]);
     
    	glTranslatef(0, f_offset_y, 0);
    	f_alpha = f_alpha>0.2 ? f_alpha-=0.15 : 0.19;
    }
    La fonction :glutBitmapCharacter prend en compte 2 parametres :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    void glutBitmapCharacter (void *font, int character);
    Je comprends pas pourquoi cette fonction prend en parametre int character et pas char character???
    Il faut que je me serve du code ASCII pour faire le passage de l'une a l'autre??

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 119
    Points : 106
    Points
    106
    Par défaut
    Les 2 fonctions prennent les mêmes paramètres
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    void glutBitmapCharacter(void *font, int character);
    void glutStrokeCharacter(void *font, int character);

  8. #8
    Expert éminent sénior

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Points : 11 877
    Points
    11 877
    Par défaut
    Citation Envoyé par Bebert71
    Je comprends pas pourquoi cette fonction prend en parametre int character et pas char character???
    Il faut que je me serve du code ASCII pour faire le passage de l'une a l'autre??
    Parce qu'en C, le passage de paramètre char n'a aucun sens puisqu'on va le transformer en entier avant de le passer en paramètre...

    Bien que beaucoup de personnes programment en passant des caractères, en-dessous, c'est des entiers qui sont passés en paramètre...

    Et non, passe la valeur du caractère, le compilateur fera le travail pour toi,

    Jc

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    68
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 68
    Points : 46
    Points
    46
    Par défaut
    Oui tu as raison dsl je me suis palnté!
    En fait j'utilise la fonction : renderStrokeCharacter

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    68
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 68
    Points : 46
    Points
    46
    Par défaut
    Merci pour ta réponse fearyourself.
    Mais maintenant mon probleme est que je ne gére pas des char mais des strings (conteneur de string).
    Et si je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    glutBitmapCharacter(GLUT_BITMAP_TIMES_ROMAN_10, dq_logs[i].c_str());
    Ca ne marche pas puisque ca le transforme en char* et non en char.

    Y a t il un moyen simple de transformer une string en char???

    Merci.

  11. #11
    Expert éminent sénior

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Points : 11 877
    Points
    11 877
    Par défaut
    Citation Envoyé par Bebert71
    Merci pour ta réponse fearyourself.
    Mais maintenant mon probleme est que je ne gére pas des char mais des strings (conteneur de string).
    Et si je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    glutBitmapCharacter(GLUT_BITMAP_TIMES_ROMAN_10, dq_logs[i].c_str());
    Ca ne marche pas puisque ca le transforme en char* et non en char.

    Y a t il un moyen simple de transformer une string en char???

    Merci.

    Voir la FAQ :

    http://jeux.developpez.com/faq/openg...UT_texte_ortho

    Jc

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    68
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 68
    Points : 46
    Points
    46
    Par défaut
    Merci. Ca y est ca compile.
    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    for(unsigned short i=0; i< dq_logs.size(); ++i)
    {
    	glColor4f(0.0, 0.0, 0.0, f_alpha);
            char * s;
            strcpy(s,dq_logs[i].c_str());
            glutBitmapCharacter(GLUT_STROKE_ROMAN, *s);
    ...
    }
    Merci à tous.

  13. #13
    Expert éminent sénior

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Points : 11 877
    Points
    11 877
    Par défaut
    Ca compile, mais ça n'affichera pas ta chaîne de caractère, juste le premier caractère

    Jc

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    68
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 68
    Points : 46
    Points
    46
    Par défaut
    Oui mais en fait la fonction dont je vous parlé tout a l'heure : renderStrokeCharacter est une fonction que l'auteur du programme que je modifie a créé.
    Voici le code de cette fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    void renderStrokeCharacter(float x, float y, float z, void *font, const string& _s_message)
    {
      glPushMatrix();
      glScalef(0.0004,0.00035,0.0004);
      glTranslatef(x, y, z);
      for (int i = 0; i<_s_message.size(); ++i) 
            glutStrokeCharacter(font, _s_message.at(i));
      glPopMatrix();
    }
    Est-ce que si je remplace glutStrokeCharacter(font, _s_message.at(i)); par glutBitmapCharacter(font, _s_message.at(i)); ca devrait marcher???

  15. #15
    Expert éminent sénior

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Points : 11 877
    Points
    11 877
    Par défaut
    Citation Envoyé par Bebert71
    Voici le code de cette fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    void renderStrokeCharacter(float x, float y, float z, void *font, const string& _s_message)
    {
      glPushMatrix();
      glScalef(0.0004,0.00035,0.0004);
      glTranslatef(x, y, z);
      for (int i = 0; i<_s_message.size(); ++i) 
            glutStrokeCharacter(font, _s_message.at(i));
      glPopMatrix();
    }
    Oui mais tu utilises glTranslate ce qui fait un déplacement dépendant de la position courante. Ce qui n'est pas généralement souhaité. Il faudrait utiliser glRasterPos comme c'est fait dans la FAQ. Remarque que l'utilisation du z n'a pas d'intêret ici.

    Est-ce que si je remplace glutStrokeCharacter(font, _s_message.at(i)); par
    glutBitmapCharacter(font, _s_message.at(i)); ca devrait marcher???
    A part que les font ne sont pas les mêmes, oui ça devrait fonctionner,

    Jc

  16. #16
    Candidat au Club
    Inscrit en
    Avril 2009
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 2
    Points : 2
    Points
    2
    Par défaut accentsss sur un texte openGl.
    Bonjour,

    j'ai encore de problèmes avec l'affichage des accents. Ils sont toujours ignorés.

    J'utilise la fonction glutBitMapCharacter(...) et je suis sur WINDOWS.

    J'ai lu sur des tutorials que les fonts peuvent s'aggroupper sur deux groups.
    Sans Serif--> n'est pas capable d'afficher les accents et
    Serif --> Elle est capable de les afficher.

    Quelq'un pourrait me dire si c'est possible de changer les types de fonts avec glut ou openGL? Ou un idée d'ou il pourrait venir mon problème?

    L'affichage marche très bien et sauf les accents je n'ai pas trouvé des problèmes. J'ai essayé plein de codes différents et avec tous j'ai le mème problème. je ne crois pas que le problème vienne de glutBitMapCharacter ni de glutStrokeCharacter, sinon, d'une autre initialisation que j'aurai oublié de faire.

    merci bcp,

    Alex

Discussions similaires

  1. Réponses: 9
    Dernier message: 05/02/2015, 13h58
  2. Réponses: 3
    Dernier message: 20/08/2012, 12h36
  3. Réponses: 2
    Dernier message: 24/07/2007, 13h50
  4. Réponses: 3
    Dernier message: 29/07/2003, 09h38
  5. Comment afficher les accent sous mysql v4.0.13
    Par buildozer dans le forum Requêtes
    Réponses: 2
    Dernier message: 17/06/2003, 09h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo