[MX] getTextExtent

Adam Wille

Erfahrenes Mitglied
Hi hi,

in Verbindung mit Versuchen, Arrays auszulesen und textfeldübergreifend die Eintragung in Textfelder vorzunehmen, bin ich irgendwie auf den Aufruf

getTextExtent

aufmerksam geworden.
Bloß' funktioniert da bei mir keinerlei Ansatz, dieses irgendwie mal wirkungsvoll als Actionscript einzusetzen.
Ich stoß' immer nur im Output-Fenster auf Fehlerausgaben á la

[type objekt]

Kann' mir schon irgendwie denken, dass ein TextFormat erst erstellt werden muss, aber dann weiß ich nicht, ob ich dazu noch das Textfeld selbst etc. angeben muss.

Also daher mal ne genaue Frage:
Kann mir jemand einfach mal das AS posten, um einen Wert für getTextExtent mit Times New Roman bei Schriftgröße 12pt das Wort "Geist" zu bekommen? :)

Geist
 
kk, so scheint das zu gehen :)
PHP:
format = new TextFormat();
format.font = "Times New Roman";
format.size = 12;

trace(format.getTextExtent("Geist").width);
Mehr war's nicht gewesen, aber auf das width ab Schluß bin ich auch nach zig Versuchen nicht gekommen... :rolleyes:

Geist
 
Nein, es ermittelt zunächst erstmal einfach nur die Raumwerte irgend eines Strings oder Wortes.
Per angehängtem .width kannst du die Angaben der horizontalen Ausbreitung des Textes in einem Textfeld mit bestimmter Formatierung (eben dem definierten TextFormat()) ausgeben lassen und per nachgestelltem .height lässt sich der vertikale Platzbedarf des Strings in Pixeln ausgeben.

Damit hast du den Vorteil, dass du anhand einfacher Format-Vorlagen den Platz ermitteln kannst, den ein String im Textfeld einnimmt.
Dadurch könntest du beispielsweise dann das Textfeld dementsprechend erweitern, wenn es ersichtlich, dass das Textfeld zu klein wäre. :)

Kann schonmal ganz nützlich werden...

Was du angesprochen hast, klingt eher nach der Funktion Textfield.autoSize :)

Geist
 

Neue Beiträge

Zurück