Hauptmenü

Neuigkeiten:

Bitte unterstützt uns und bestellt über diese Links bei Amazon  oder HumbleBumble!

Textlänge in Pixel bestimmen

Begonnen von Bòógieman, 05. Februar 2007, 21:10:34

Vorheriges Thema - Nächstes Thema

Bòógieman

ich will einen Text via Overlay X-zentriert ausgeben
dafür müsste ich aber die textlänge in pixel bestimmen
gibt es da nen AGS-befehl dafür? ???

momentan mach ich das so:
Text2 = Overlay.CreateTextual(63, 87, 210, 1, 15,"\"Maniac Mansion\" von LucasFilm");
also fixe koordinaten, die genau zu dem text passen
klappt auch ganz schön, aber leider funkt das nur bei einer sprache ;)
für zB eine englische übersetzung würden die koordinaten nicht mehr passen :(
die einzelnen buchstaben der MM-font sind leider auch nicht gleich breit, also kann ich das leider nicht mit Textlänge*Zeichenbreite lösen :-\
Schlachtaman Vibrations, UHYEAH!!!
_________________________________

>>>> Ende der Kommunikation <<<<

Rocco

ich hab das beim ags-shoot'em up für die punkteausgabe so gelöst:

 
  player.x = system.viewport_width/2;
  player.y = 2;
  String text = String.Format("Lives: %d          Score: %06d", vehicle.lives, vehicle.score );
  player.SayBackground(text);


mit einem char,
müsste bei dir eigentlich auch funktionieren.


Bòógieman

@KhrisMUC: besten Dank!
genau das hab ich gesucht! hab das gestern einfach nicht in der AGS-hilfe gefunden
hab nach allem gesucht, wie TextSize, TextLength, TextWidth, CalcTextWidth, etc.
war aber wohl etwas zu übermüdet um an GET zu denken  ::) :-[ ;D

@Rocco: das würde aber leider nur mit einer zeile funktionieren
hab irgendwie vergessen zu erwähnen, dass ich ja mehrere zeilen gleichzeitig mit unterschiedlichen farben anzeigen will
um genau zu sein, geht es um die credits von episode 53 (falls sich da noch jemand dran erinnen kann  ;) )
z.B so:
Vielen Dank für die Hilfe an
KhrisMUC
und Rocco
Schlachtaman Vibrations, UHYEAH!!!
_________________________________

>>>> Ende der Kommunikation <<<<

Rocco

würde glaub ich auch mehrzeilig funktionieren, irgendwie kann man auch den zeilenumbruch regulieren.
aber ist sowieso nicht das was du wolltest, deswegen bist du mit GetTextWidth optimal bedient.  :)

info: Display ist auch eine funktion die defaultmässig am bildschirm zentriert dargestellt wird.

Bòógieman

ja, aber die haben alle die ungünstige angewohnheit, dass immer nur ein text sichtbar sein kann
jeder weitere aufruf löscht den vorgängertext
und das mit dem zeilenumbruch hab ich damals schon krampfhaft versucht, aber hab nix zustandegebracht
\n sowie die passenden ASCII-zeichen haben einfach nicht funktioniert :(

naja, is ja auch egal jetzt ;)
Schlachtaman Vibrations, UHYEAH!!!
_________________________________

>>>> Ende der Kommunikation <<<<