GDI : Couper un texte trop long [Résolu]

Signaler
Messages postés
219
Date d'inscription
jeudi 6 juillet 2006
Statut
Membre
Dernière intervention
7 septembre 2009
-
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
-
Bonjour tous le monde,

J'aimerais savoir s'il existe une méthode dans GDI pour tronquer un texte trop long :
J'ai un texte à écrire dans un controle d'une certaine taille où j'y dessine du texte d'une longueur variable.

Je connais la méthode pour mesurer la longueur du texte (MesureString je crois) de l'objet de dessin Graphics, mais j'aimerais couper mon texte trop long pour y mettre trois petits points à la place.

Je pensais faire un truc un peu brut qui aurait été une boucle retirant un caractère jusqu'à ce que la chaine loge... mais ca ne me plait pas.

Si c'est la seule manière de procéder, je procèderais, mais ça m'étonne un peu de rien trouver pour faire ca...

Merci de votre aide

NB : Très joli cette nouvelle interface, j'adore le changement... sauf que C# est mis à la fin , il aurait du être mis juste à coté de CS

<hr />I love .net

6 réponses

Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
32
Salut,

StringFormat sf = new StringFormat( );
sf.FormatFlags = StringFormatFlags.NoWrap;
sf.Trimming = StringTrimming.EllipsisWord;


g.DrawString( s, this.Font, Brushes.Black,
    new RectangleF( 10.0f, 10.0f, 100.0f, 100.0f ), sf );
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
47
Salut,
Je ne crois pas que cette fonction existe, perso je l'ai toujours codée moi-même...
C'est juste quelques lignes hein :)

<hr />
-My Blog-
Messages postés
219
Date d'inscription
jeudi 6 juillet 2006
Statut
Membre
Dernière intervention
7 septembre 2009

En fesant une boucle qui retire un caractère jusqu'à ce que ca loge ?

<hr />I love .net
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
47
Euh je me rappelle plus par coeur, mais directement comme ça à froid je ne vois pas d'autres solutions...

<hr />
-My Blog-
Messages postés
219
Date d'inscription
jeudi 6 juillet 2006
Statut
Membre
Dernière intervention
7 septembre 2009

Merci... j'avais bien regardé la dedans, mais pas assez, en plus le EllipsisWord est vraiment mieux que ce que je voulais faire.

Une grand merci
<hr />I love .net
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
47
Ha tiens oui, je n'y avais même pensé.
Merci aussi  

<hr />
-My Blog-