Connaitre la taille en pixel d'un mot

Connaitre la taille en pixel d'un mot - Java - Programmation

Marsh Posté le 28-04-2003 à 09:08:45    

Bjr tout le monde, j'essaye de centrer un mot dans un pti objet graphique que je suis entrain de créer et j'ai besoin pour celà de connaitre la taille en pixels que ce mot va prendre à l'écran. J'arrive à faire des trucs approximatifs mais je voulait savoir si il existe pas dans mon cas une méthode ou pti algo qui me donnerait un résultat exact pour un résultat vraiment propre...
Merci d'avance

Reply

Marsh Posté le 28-04-2003 à 09:08:45   

Reply

Marsh Posté le 28-04-2003 à 09:51:25    

Ben, ton cas on en connait pas grand chose en fait !

Reply

Marsh Posté le 28-04-2003 à 09:59:27    

Oui j'ai l'impression...  
J'avance dans mes recherches et je pense avoir trouvé la solution mais comme là je suis à la fac avec la JDK 1.2 il faut que j'attende d'etre rentré chez moi ;)  
Si ça interesse quelqu'un :
Font font = Font.getFont("Helvetica-bold-italic" );
ontRenderContext frc = g.getFontRenderContext();
TextLayout layout = new TextLayout("This is a string", font, frc);
 
layout.getVisibleAdvance() donne en théorie l'espace restant dans l'objet graphique ce qui permet de déduire l'espace pris par la string... mais bon je peux pas encore tester
 

Reply

Marsh Posté le 28-04-2003 à 10:12:38    

Le mieux c&est d&utiliser FontMetrics, mais je sais pas s&il est dans le JDK 1.2
FontMetrics fm=new FontMetrics(monFont);
 
et apres tu peux avoir la hauteur et la largeur d'une String avec  
fm.getWidth("blablabla" );
idem avec getHeight

Reply

Marsh Posté le 28-04-2003 à 10:36:56    

Merci souk...
J'ai trop honte... j'avais vu la classe FontMetrics mais comme il était assez "tot" j'avais mal aux yeux et g pas vu la méthode getWidth() ;) comme quoi....
Merci bien
--closed--

Reply

Marsh Posté le 28-04-2003 à 13:30:42    

de rien...j'avais mis du tps a la trouver a l'epoque  :jap:

Reply

Marsh Posté le 11-05-2010 à 14:40:18    

souk a écrit :

Le mieux c&est d&utiliser FontMetrics, mais je sais pas s&il est dans le JDK 1.2
FontMetrics fm=new FontMetrics(monFont);
 
et apres tu peux avoir la hauteur et la largeur d'une String avec  
fm.getWidth("blablabla" );
idem avec getHeight


 
Curieux moi en java 1.5 ça marche pas tout à fait mais suffit de faire ça:
int fontSizePix = 12;
Font font = new Font("monospace", Font.PLAIN, fontSizePix);
FontMetrics fm=FontDesignMetrics.getMetrics(font);  
int stringWidth = fm.stringWidth("Hello word" );

Message cité 1 fois
Message édité par dge1971 le 11-05-2010 à 14:42:42
Reply

Marsh Posté le 11-05-2010 à 15:12:03    

tu réponds à un topic vieux de 7 ans...


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 11-05-2010 à 15:33:47    

jdk 1.2, nostalgie quand tu nous tiens...

Reply

Marsh Posté le 11-05-2010 à 16:27:39    

dge1971 a écrit :


 
Curieux moi en java 1.5 ça marche pas tout à fait mais suffit de faire ça:
int fontSizePix = 12;
Font font = new Font("monospace", Font.PLAIN, fontSizePix);
FontMetrics fm=FontDesignMetrics.getMetrics(font);  
int stringWidth = fm.stringWidth("Hello word" );


T'es sur d'avoir la police en question ("monospace" ) sur ta bécane ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed