Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Kako dobiti sirinu slova u pixelima

[es] :: Java :: Kako dobiti sirinu slova u pixelima

[ Pregleda: 2537 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

dragan_bg_88
Dragan Slaveski
Beograd

Član broj: 68739
Poruke: 288
*.dynamic.sbb.co.yu.



Profil

icon Kako dobiti sirinu slova u pixelima02.10.2007. u 07:52 - pre 201 meseci
Pozdrav svima. Potrebno mi je sledece: Posto imam program koji stampa nesto, kako ja da dobijem sirinu neke reci u pixelima, ili sirinu karaktera u pixelima?
 
Odgovor na temu

fimalbonegaculo
product development, team lead,
developer, sys-admin
beograd

Član broj: 395
Poruke: 161
87.250.121.*

ICQ: 81662016


+1 Profil

icon Re: Kako dobiti sirinu slova u pixelima02.10.2007. u 11:30 - pre 201 meseci
Možda pomoću ovoga: http://java.sun.com/j2se/1.5.0/docs/api/java/awt/FontMetrics.html konkretno metode
Code:
public int charWidth(int codePoint)

Usput, verovatno želiš da računaš širinu slova m, ono se najšeće uzima kao reper za širinu pojedinog karaktera za određeni font.
"if you fail to plan, you plan to fail"
 
Odgovor na temu

eXPerience
[ coded ]

Član broj: 14396
Poruke: 88
*.dynamic.sbb.co.yu.

Sajt: [ coded ]


Profil

icon Re: Kako dobiti sirinu slova u pixelima02.10.2007. u 12:20 - pre 201 meseci
Sirina stringa za odabrani font ...
Code:

String s = "sdfs sadfad";
int width = getFontMetrics(new Font("Arial", Font.PLAIN, 12)).stringWidth(s);

Dame biraju uvek pogresne tipove ... Na srecu ...
 
Odgovor na temu

Mali Misha
Mihajlo Anđelković
NBGD

Član broj: 79396
Poruke: 379
78.90.101.*

ICQ: 195487525
Sajt: cpptea.com


+1 Profil

icon Re: Kako dobiti sirinu slova u pixelima03.09.2008. u 09:51 - pre 190 meseci
Okej, lako je kad se raspolaže serviranim Graphics objektom. Šta da se radi kad se jednostavno raspolaže:
* imenom fonta,
* tipom (plain, bold, italic, ...),
* veličinom slova, i
* stringom

I traži se njegova dužina.

Prvo sam prčkao sa FontMetrics dok nisam ukapirao da mu je konstruktor protected. Onda sam probao da napravim dete te klase sa javnim konstruktorom i pozovem nasleđeni stringWidth ali jok, to izaziva stack overflow. Potom probah i Graphics da napravim pa da od njega iscedim šta mi treba i tako dođoh do toga da moram aplet da napravim kako bih dobio najobičniju dužinu stringa. Ali ček` malko, to je već previše izvoljevanja od strane infrastrukture. Manje nerviranja je napraviti tabelu sa potrebnim dužinama, skalirati po potrebi i to je to.

E sad... pitanje: kako ovo može mnogo pametnije da se reši tj. kako pristupiti funkcionalitetima stringWidth bez svih ovih okolišanja? Verujem da ima načina.
Ipak se ++uje.
 
Odgovor na temu

Mali Misha
Mihajlo Anđelković
NBGD

Član broj: 79396
Poruke: 379
78.90.101.*

ICQ: 195487525
Sajt: cpptea.com


+1 Profil

icon Re: Kako dobiti sirinu slova u pixelima03.09.2008. u 17:01 - pre 190 meseci
O da, i to je rešeno. StyleContext se može napraviti, a on može da da odgovarajući FontMetrics. Ostatak je na autoru.
Ipak se ++uje.
 
Odgovor na temu

[es] :: Java :: Kako dobiti sirinu slova u pixelima

[ Pregleda: 2537 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.