[Frage] Maximale Anzahl der Zeichen pro Zeile ermitteln

Entwicklung
AudioSlyer
Erleuchteter
Erleuchteter
Beiträge: 450
Registriert: Sonntag 28. Juli 2002, 01:18

[Frage] Maximale Anzahl der Zeichen pro Zeile ermitteln

Beitrag von AudioSlyer »

Hi,
gibt es die Möglichkeit die Breite eines Char zu ermitteln?
Im Moment mache ich das so:

max_x= width / g_settings.screen_xres * 100 / 8; //max_x ist die max Anzahl pro Zeile

8 ist bei manchen Fonts ok, aber nicht bei allen.

Thx
Gaucho316
Contributor
Beiträge: 1688
Registriert: Donnerstag 17. Februar 2005, 20:24

Re: [Frage] Maximale Anzahl der Zeichen pro Zeile ermitteln

Beitrag von Gaucho316 »

Nutze doch einfach die Funktion

Code: Alles auswählen

g_Font[SNeutrinoSettings::FONT_TYPE_...]->getRenderWidth(char)
, um die Breite eines Zeichens zu ermitteln. Die Fonttypen findest du in settings.h. Das wird aber vermutlich nur ungefähr hinkommen, da Zeichen ja unterschiedlich breit sind.
mrvica
Einsteiger
Einsteiger
Beiträge: 342
Registriert: Freitag 24. September 2004, 12:48

Re: [Frage] Maximale Anzahl der Zeichen pro Zeile ermitteln

Beitrag von mrvica »

Gaucho316 hat geschrieben:Das wird aber vermutlich nur ungefähr hinkommen, da Zeichen ja unterschiedlich breit sind.
Ja, in der Tat, Textinhalt spielt auch eine Rolle, der Fachmann spricht da vom Kerning
http://en.wikipedia.org/wiki/Kerning

mrvica
barsch
Neugieriger
Neugieriger
Beiträge: 5
Registriert: Freitag 2. September 2011, 23:04

Re: [Frage] Maximale Anzahl der Zeichen pro Zeile ermitteln

Beitrag von barsch »

Kerning ist aber nochmal was ganz spezielles. Unterschiedliche Buchstabenbreite (Dickte) kommt eher dadurch: http://en.wikipedia.org/wiki/Typeface#Proportion