XgaletteX
Messages postés102Date d'inscriptionsamedi 14 mai 2005StatutMembreDernière intervention12 août 2005
-
20 juin 2005 à 12:04
neodelphi
Messages postés442Date d'inscriptionjeudi 4 avril 2002StatutMembreDernière intervention11 août 2008
-
20 juin 2005 à 23:09
Comment l'on fait pour connaitre la hauteru d'un texte écrit sur plusierus lignes, il y a bien TextHeigth mais ca prend pas en compte les interlingnes....
cs_Kenavo
Messages postés702Date d'inscriptionvendredi 21 mars 2003StatutMembreDernière intervention 1 octobre 20095 20 juin 2005 à 13:24
Salut Xgalettex,
Ben, c'est là qu'il faut utiliser DrawText avec DT_CALCRECT !
par exemple :
var
rct : TRect;
begin
Rct := Rect(100,100,250,100); // Ici on de détermine que la largeur (250-100)
DrawText(Canvas.Handle, 'Essai d''écriture multi-lignes avec
détermination du rectangle nécessaire', -1, Rct , DT_CALCRECT or
DT_CENTER or
DT_WORDBREAK ); // Rct est modifié au retour pour permettre l'écriture de tout le texte
Canvas.Brush.Color := clAqua;
Canvas.Fillrect(Rct); // ça c'est pour visualiser le nouveau rectangle Rct
DrawText(Canvas.Handle, 'Essai d''écriture multi-lignes avec
détermination du rectangle nécessaire', -1, Rct , DT_CENTER or
DT_WORDBREAK ); // et là on écrit pour de bon