Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 11-11-2005, 10:28   #1 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 9
Dynamisches TextField, CSS und textHeight

Hallo,
fast die gesamte gestrige Nacht habe ich an diesem Problem gegrübelt und bin auf keine Lösung gekommen:

Ich möchte ein dynamisches Textfeld erzeugen, deren Schriftformatierung über ein externes CSS definiert wird UND - jetzt kommts - anschließend die Höhe des Textes auslesen, da nachfolgende Textfelder sich entsprechend anpassen sollen. Mit einer externen CSS funktioniert das einfach nicht. Wenn ich stattdessen TextFormat verwende, wird die Höhe korrekt ausgegeben!! Zuerst dachte ich, dass es mit embedFonts zu tun hat, aber das konnte ich inzwischen ausschließen (siehe Anhang).

Hier mal meine Testdatei: textfield.zip

Ich glaube fast, dass es keine Lösung gibt und es sich um einen Bug handelt (nutze übrigens Flash MX 2004 Professional). Würde halt gerne mit einer strukturierten externen CSS arbeiten als in Flash TextFormate festzulegen

Aber ich lasse mich natürlich gerne eines Besseren belehren...

Nachtrag:
Ähnlich ist übrigens dieser Beitrag.

Momentan sehe ich nur, dass ich auf das externe CSS verzichten muss und stattdessen mit <font>-Tags in den Textfeldern zu arbeiten. Denn es sollen natürlich :; unterschiedliche Schriftgrößen innerhalb des Textfelds ermöglicht werden. Das wäre bei CSS mit unterschiedlichen neutralen Tags natürlich kein Problem gewesen.

Übrigens:
CSS bzw. StyleSheet und TextFormat parallel zu verwenden funktioniert leider nicht. Idee war z.B. den Font probehalber in TextFormat zu definieren und den Rest im StyleSheet (Hoffnung war, dass Flash die Höhe dann richtig rechnet). Wenn ich


Code:
myTxt5.StyleSheet = s;
myTxt5.htmlText = "<title>TextFormat/CSS,<title><subtitle>eingebettete Schrift</subtitle>';
myTxt5.setTextFormat(f2);
verwende, gibt das liebe Flash einfach gar nichts aus. Wenn ich

Code:
...
myTxt5.htmlText = "<title>TextFormat/CSS,<title><subtitle>eingebettete Schrift</subtitle>';
myTxt5.setTextFormat(f2);
myTxt5.StyleSheet = s;
...
schreibe, wird das StyleSheet komplett ignoriert.

Geändert von relounge (11-11-2005 um 11:28 Uhr)
relounge ist offline   Mit Zitat antworten
Alt 11-11-2005, 12:09   #2 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Geht's dir darum:
PHP-Code:
TextField.prototype.setBackground = function(c) {
    
this.background true;
    
this.backgroundColor c;
};
// StyleSheet laden
var = new TextField.StyleSheet();
s.load("meinStyle.css");
s.onLoad done;
// TextFormat erstellen
var = new TextFormat();
with (f) {
    
font "Arial";
    
size 30;
    
color 0x000000;
}
// Textfeld 1 mit eingebetteter Schrift (CSS)
function done() {
    
createTextField("myTxt"10025012);
    
with (myTxt) {
        
condenseWhite true;
        
embedFonts true;
        
selectable true;
        
autoSize true;
        
wordWrap true;
        
multiline true;
        
html true;
        
border false;
        
background false;
    }
    
myTxt.styleSheet s;
    
myTxt.htmlText "<title>CSS, eingebettete Schrift</title>";
    
myTxt.setBackground(0xFF0000);
    
trace("CSS eingebettete Schrift (textHeight,_height): "+myTxt.textHeight+","+myTxt._height);


__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 11-11-2005, 12:44   #3 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 9
Thumbs up Heureka!!

Volltreffer. Und wieder mal ein Beispiel dafür, dass man sich mal die Doku genau anschauen sollte (vor allem wenn es um das Laden externer Daten geht). Vielen Dank auch !
relounge ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 06:09 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele