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

 Delphi Discussion :

[D6] Connaitre la taille en pixel d'un texte


Sujet :

Delphi

  1. #1
    Membre éclairé
    Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    624
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mars 2004
    Messages : 624
    Points : 681
    Points
    681
    Par défaut [D6] Connaitre la taille en pixel d'un texte
    Bonjour,

    je souahite connaitre la taille en pixel d'un texte multi ligne. J'utilise donc ce qui est donné dans la FAQ et ait changé cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DrawText(C.Canvas.Handle, PChar(Phrase), Length(Phrase), Rect, (DT_EXPANDTABS or DT_CALCRECT));
    par cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DrawText(C.Canvas.Handle, PChar(Phrase), Length(Phrase), Rect, (DT_EXPANDTABS or DT_CALCRECT or DT_WORDBREAK));
    Mais il me renvoit toujours la même taille de texte (avec ou sans DT_WORDBREAK).

    D'où vient l'erreur ?

    Exemple : Coucou ça va bine merci c'est super sympa d'être passé ici, renvoit Bottom = 13, Right = 278.

    Merci

  2. #2
    Membre à l'essai
    Inscrit en
    Janvier 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 9
    Points : 10
    Points
    10
    Par défaut
    Length ne renvoi pas la taille en pixel du texte, mais le nombre de caractères.
    Pour connaitre la longueur du texte, utilise plutôt Canvas.TextWidth.

  3. #3
    Membre éclairé
    Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    624
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mars 2004
    Messages : 624
    Points : 681
    Points
    681
    Par défaut
    En écrivant le message j'ai compris.

    Il faut passer un rectangle dans lequel on écrit pour que ça fonctionne le DT_WORDBREAK

  4. #4
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 612
    Points : 25 303
    Points
    25 303
    Par défaut
    Peut-être qu'il soit nécessaire de lui poser une limite, sinon comment peut-il savoir à quel moment s'arrêter !
    EDIT : Le Temps que j'aille me cherche un café, déjà deux réponses ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Trouver la taille en pixel d'un texte
    Par bouhmid2007 dans le forum Débuter
    Réponses: 5
    Dernier message: 08/08/2011, 11h09
  2. connaitre la taille de ses pixels?
    Par membreComplexe12 dans le forum Windows
    Réponses: 5
    Dernier message: 11/04/2010, 19h19
  3. Comment mesurer la taille en pixels d'un texte?
    Par ValyGator dans le forum Windows
    Réponses: 1
    Dernier message: 29/10/2009, 06h57
  4. Connaitre la taille d'un pixel en cm
    Par TiChabin972 dans le forum Interfaces Graphiques en Java
    Réponses: 3
    Dernier message: 24/06/2007, 18h53
  5. connaitre la longeur en pixel d'un texte
    Par Harry_polin dans le forum DirectX
    Réponses: 2
    Dernier message: 17/05/2004, 18h31

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