Mit FontMetrics Zeichen Bilder erstellen

Hey Leute.
Ein glyph aus nem ttf Font besitzt ja folgende Infos:

Ich würde gerne mit der awt Font Klasse einzelne chars in ein Bild umwandeln können,
um nachher mit opengl einfach die bilder ananeinander zuhängen, um eben text zu rendern.

Das Problem ist, das die FontMetrics aber nicht ausreichend Infos liefern (oder ich bin einfach zu müde
die zu finden) um die Bilder richtig zu erzeugen, beziehungsweise die zeichen nachher in zB richtigen abständen aneinanderzuhängen…

aber irgendwie muss es doch gehen, swing kann es ja auch…

*** Edit ***

was ich meine ist dass ich zB nicht an die eigentliche width eines glyphs komme, metrics.charWidth© gibt immer die gleiche zahl zurück… ich versteh das nicht

wie genau muss das werden?
beliebige Schriftarten oder nur eine?

ich habe mir die Breiten mal selber ausgerechnet, weiß gar nicht ob in der aktuellen Firma oder einer alten, könnte Montag nachschauen,
aber ist auch schnell gemacht:
je Buchstabe schreibe 30 oder 50 oder so direkt hintereinander (bei mir war es per drawString in einem ordentlichen Swing-Fenster),
dann messe die Breite, male darunter Linien mit Breite x

viele Buchstaben hatten dabei dieselbe Breite, nicht so viel zu tun wie es vielleicht klingt,
dann noch die hohe Mathematik der Teilung und ein gewisses Ergebnis ist da :wink:


AAAAAAAAAA
BBBBBBBBBB
aaaaaaaaaa
bbbbbbbbbb
cccccccccc
dddddddddd
eeeeeeeeee
iiiiiiiiii
jjjjjjjjjj
kkkkkkkkkk

ok, hier im Forum schon etwas unterschiedlicher breit als ich in Erinnerung hatte, notfalls 40+ Mal und mehr zu messen :wink:
oder ich gerade schon viele Ausnahmen erwischt

edit: irgendwie klingt das auch genau nach FontMetrics charWidth…,
bin nicht sicher ob ich das nur damals schlicht nicht kannte,

liefert metrics.charWidth© wirklich für e und i dasselbe?
na, sollte selber testen, kann gerade nicht, nur ein kleiner Einwurf

Moin,

hast Du diesen Thread schon gelesen?

(Aus der Erinnerung heraus hat das damals funktioniert.)

Gruß
Fancy

uff, stimmt, ich erinnere mich tatsächlich… hatte da glaube ich sogar mitgelesen…
aber ist auch ein weilchen her ^^ schau ich mir nochmal an, danke.

ich bin auf diese seite gestoßen, FreeType - TTF fonts in OpenGL - Game Development & Technical Discussion - Wildfire Games Community Forums,
aber verstehe diese freetype lib irgendwie nicht.

*** Edit ***

[quote=SlaterB]wie genau muss das werden?
beliebige Schriftarten oder nur eine?[/quote]

so genau, das der text gut aussieht… ^^
und welchen unterschied macht es, ob ich beliebige haben will oder nicht? ^^
sowieso dynamisch.

aber das bringt mich auf eine idee was du vorgeschlagen hast… man könnte ja einfach ein zeichen malen, und
dann per pixel durschlauf einafach höchsten, tiefsten, „linksten“, und „rechtsten“ wert suchen… das müsste doch eigentlich klappen?

*** Edit ***

aah… jetzt weiß ich warum charWidth immer gleich war… :smiley:

ich habe aus… Reflex?.. die Schriftart Consolas verwendet…
und bei der sind alle Zeichen gleich breit ^^ fail…

naja ich denke jetzt sollte das klappen

für meinen Vorschlag dahinter mit manuellen Messen wäre es bei einer Schriftart machbar, bei 100 weniger :wink:

hä natürlich. wäre ja nur einmal ausführen und irgendwo die resultate speichern…?