Bonjour,
Existe-t-il une méthode pour connaître la largeur en px d'un texte, en fournissant la police, la taille et le mot ?
Merci d'avance,
Jérôme
Bonjour,
Existe-t-il une méthode pour connaître la largeur en px d'un texte, en fournissant la police, la taille et le mot ?
Merci d'avance,
Jérôme
Regarde la classe MeasureString
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 using(Graphic g = CreatGraphics()) { SizeF sz = g.MeasureString("Hello", new Font("Arial", 40)); }
Heu... je met ca dans quoi ? Ca marche avec une application web ASP.net ? Caron dirait une application Windows.
A mon sens, tu ne peux pas mesurer une chaine en ASP.NET car si on y réfléchit, la taille dépend de paramètres externes comme par exemple une feuille de style ou le paramétrage du navigateur.
Le meilleur ùmoyen apparemment pour obtenir la longueur d'un texte est explique ici
http://www.codeproject.com/KB/GDI-pl...urestring.aspx
seconde methode celle du rangeString
par contre sur ce que j'ai essayé ca donne la bonne longueur mais pas la bonne hauteur ... il ya toujours des margne haute et basse.
Mais en fait la police utilisée pour le dessin contient deja cette info.
Font.Height donne la hauteur du texte avec les marge
Font.SizeInPoint donne la hauteur du texte sans les marge en pixel
avec ces deux infos on peut calcul la taille du texte et les offset pour correctement positionner le texte
Sauf que les navigateurs proposent des options permettant d'augmenter/dimuner la taille de la police etc. Donc savoir la taille réelle me paraît bien compliqué.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager