Avatar billede joki Mester
20. januar 2007 - 08:11 Der er 4 kommentarer og
1 løsning

String til pix længde

Hej

Kan nogen fortælle mig om det er muligt at få længden i pix af en String.



på forhånd tak
Avatar billede mikkelbm Nybegynder
20. januar 2007 - 11:25 #1
Graphics2D g = ...; // Dette objekt får du fra din paint metode.
Font font = Font.getFont("Helvetica-bold-italic");
FontRenderContext frc = g.getFontRenderContext();
TextLayout layout = new TextLayout("This is a string", font, frc);

Rectangle2D bounds = layout.getBounds();
double width = bounds.getWidth(); // Så har du længden


Ovenstående er modificeret fra suns eget eksempel:

http://java.sun.com/j2se/1.5.0/docs/api/java/awt/font/TextLayout.html
Avatar billede joki Mester
21. januar 2007 - 08:42 #2
har forsøgt at lege lidt med det. Hvor får jeg mit Graphics2D objekt fra.
Kan ikke lige se hvad du mener med fra min paint metode
Avatar billede mikkelbm Nybegynder
21. januar 2007 - 09:43 #3
Normalt skal man bruge længden af en string i forbindelse med noget grafisk.

Hvad skal du bruge informationerne til?

...
Hvis ikke du overrider paint metoden, kan du bruge følgende muligheder:

Hvis du nedarver fra Component (JPanel, JFrame, etc..) kan du gøre:
Graphics2D g = (Graphics2D)this.getGraphics();

Hvis ikke du har noget grafisk overhovedet, kan du muligvis gøre følgende (ikke testet):

BufferedImage img = new BufferedImage (300, 300, BufferedImage.TYPE_INT_ARGB);
Graphics2D g = (Graphics2D)img .getGraphics();
Avatar billede joki Mester
21. januar 2007 - 16:19 #4
Jeg bruger informationerne til at skrive nogle beløb lige under hinanden i et pdf dokument. Jeg har fået det til at virke. Tak for hjælpen smid bare et svar.
Avatar billede mikkelbm Nybegynder
23. januar 2007 - 21:06 #5
Kommer her...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester