Das an die
Um einen Verweis auf ein bestehendes statisches Textfeld in ActionScript 3.0 zu erzeugen, können Sie die Elemente in der Anzeigeliste durchlaufen. Im folgenden Ausschnitt wird beispielsweise geprüft, ob die Anzeigeliste ein statisches Textfeld enthält, welches anschließend ggf. einer Variablen zugewiesen wird:
Verwenden Sie zur dynamischen Erstellung eines Textfelds den Konstruktor
Mit den Methoden der TextField-Klasse können Sie Text in dynamischen Textfeldern oder Eingabetextfeldern, die Sie beim Authoring oder zur Laufzeit erstellen, festlegen, auswählen und ändern.
ActionScript bietet mehrere Möglichkeiten, Text zur Laufzeit zu formatieren. Mit der TextFormat-Klasse können Sie die Zeichen- und Absatzformatierung für TextField-Objekte festlegen. Sie können mit der Eigenschaft
Flash Player unterstützt einige HTML-Tags zum Formatieren von Text. Eine Liste der unterstützten HTML-Tags finden Sie in der Beschreibung der Eigenschaft
Hinweis: Das Standardverhalten (dem Textfeld wird Text hinzugefügt) tritt nur dann ein, wenn Flash Player das Ereignis erstellt. Dies ist der Fall, wenn ein Benutzer versucht, Text einzugeben. Eine Texteingabe in ein Textfeld durch Senden von
Es werden zwei Textfelder erstellt, eines für die Benutzereingabe und das andere (
Die Standardgröße für ein Textfeld beträgt 100 x 100 Pixel.
Das Textfeld
Die
Die
Die Klasse definiert das Shape-Objekt
In der
Das erste Textfeld enthält dann den Text, den der Benutzer auswählt. Um sicherzustellen, dass nur auf den Text geklickt, dieser aber nicht ausgewählt wird, wird die
In der
Im Konstruktor wird das Textfeld
In der
<img src = 'filename.jpg' id = 'instanceName' >
Das Bild (
In der
Im Konstruktor wird das Textfeld
In der
Das Textfeld
Zur Veranschaulichung wird das Textfeld
In der
Der angehängte Text befindet sich zwei Zeilen unter dem Gedicht Song of Myself von Walt Whitman. Mit einem neuen TextFormat-Objekt (
Für das Textfeld
In der
Das Textfeld
Im Textfeld
In der
Wenn Sie keine Werte für diese Parameter angeben, wird diese Methode auf den gesamten Text im Textfeld angewendet.
In der folgenden Tabelle sind drei Verwendungsmöglichkeiten aufgeführt:
TextField kann keine Schriftarten des Typs
Wenn sowohl
Mit der
Hinweis: Diese Methode funktioniert nicht, wenn ein Stylesheet auf das Textfeld angewendet wird.
Es werden zwei verschiedene TextField-Objekte erstellt, und für die
Mit der
Hinweis: Diese Methode funktioniert nicht, wenn ein Stylesheet auf das Textfeld angewendet wird.
Das Textfeld
Zwei Ereignis-Listener für das Textfeld
In beiden Methoden,
Beachten Sie, dass manuell vom Benutzer eingefügter oder mit der
Hinweis: Diese Methode funktioniert nicht, wenn ein Stylesheet auf das Textfeld angewendet wird.
Mit der Methode
Die beiden Arten von Formatierungsinformationen in einem TextFormat-Objekt sind Formatierungen auf Zeichen- und auf Absatzebene. Jedes Zeichen in einem Textfeld kann seine eigenen Zeichenformatierungseinstellungen (z. B. Schriftname, Schriftgrad, fett und kursiv) haben.
Bei Absätzen wird das erste Zeichen im Absatz auf die für den gesamten Absatz geltenden Absatzformatierungseinstellungen überprüft. Es gibt unter anderem folgende Absatzformatierungseinstellungen: linker Rand, rechter Rand und Einzug.
Jeder Text, der manuell vom Benutzer eingefügt oder durch die
Es wird ein Ereignis-Listener für das Textfeld
"Times-12"
.
To embed the font, follow these steps:
Wenn Sie Werte für diese Eigenschaft definieren möchten, verwenden Sie die folgenden Stringwerte:
Wurde
Wurde
Wurde
Wurde
Der gesamte Text zwischen den durch
Indizes für Auswahlbereiche haben die Basis null (d. h. die erste Position ist 0, die zweite Position 1 usw.).
Führen Sie dieses Beispiel aus, und versuchen Sie, durch Klicken in die TextField-Instanz Text auszuwählen. Klicken Sie anschließend in das Feld, ohne Text auszuwählen. Wenn Sie in den Text klicken, ohne eine Auswahl vorzunehmen, gibt die Eigenschaft
Wenn
Legen Sie die Eigenschaft
Hinweis: Wenn Zeichen ausgewählt werden, die mit
var my_txt:TextField new TextField(); my_txt.text = "Flash Macintosh version"; var my_fmt:TextFormat = new TextFormat(); my_fmt.color = 0xFF0000; my_txt.defaultTextFormat = my_fmt; my_txt.setSelection(6,15); // partial text selected - defaultTextFormat not applied my_txt.setSelection(6,23); // text selected to end - defaultTextFormat applied my_txt.replaceSelectedText("Windows version");
Bei Aufruf der Eigenschaft
Hinweis: Diese Eigenschaft kann nicht festgelegt werden, wenn ein Stylesheet auf das Textfeld angewendet wird.
Wenn Sie die Eigenschaft
flash.text.GridFitType
settings. It assumes that you have a font
embedded in the Library with the linkage identifier set to "Times-12"
.
To embed the font, follow these steps:
Anhand der verwendeten Art der Rasteranpassung wird bestimmt, ob Flash Player breite horizontale und vertikale Linien an ein Pixel- oder Subpixelraster anpasst.
Für die Eigenschaft
Flash Player unterstützt die folgenden HTML-Tags:
Die folgenden Attribute werden vom
Medieninhalte, die in Textfelder eingebettet sind, werden in voller Größe angezeigt. Um die Abmessung der Medien anzugeben, die Sie einbetten, verwenden Sie das
Im Allgemeinen wird ein in ein Textfeld eingebettetes Bild in der Zeile nach dem Tag
Wenn sich in der Sicherheitssandbox der Anwendung AIR-Inhalt befindet, ignoriert AIR
Mit dem Tag
Die folgenden Attribute werden vom Tag
Flash Player und AIR unterstützen die folgenden HTML-Entitäten:
Flash Player und AIR unterstützen auch explizite Zeichencodes wie z. B. & (Und-Zeichen, ASCII) und € ( €-Symbol, Unicode).
Zum Vergleich werden die gleichen Schritte mit einem weiteren TextField-Objekt mit der Bezeichnung
Wenn der String mit dem Einfügezeichen (^) beginnt, werden anfänglich alle Zeichen akzeptiert, aber nachfolgende Zeichen im String werden nicht in die Liste der zulässigen Zeichen aufgenommen. Wenn der String nicht mit dem Einfügezeichen (^) beginnt, werden anfänglich keine Zeichen akzeptiert, aber nachfolgende Zeichen im String werden in die Liste der zulässigen Zeichen aufgenommen.
Im folgenden Beispiel können nur Großbuchstaben, Leerzeichen und Zahlen in das Textfeld eingegeben werden:
my_txt.restrict = "A-Z 0-9";
Im folgenden Beispiel werden alle Zeichen bis auf Kleinbuchstaben akzeptiert:
my_txt.restrict = "^a-z";
Wenn Sie „^“ bzw. „-“ als normale Zeichen verwenden möchten, müssen Sie ihnen einen umgekehrten Schrägstrich (\) voranstellen. Zulässige Backslash-Folgen: \-, \^ oder \\. Der umgekehrte Schrägstrich muss ein echtes Zeichen im String sein; in ActionScript muss der umgekehrte Schrägstrich also doppelt eingegeben werden. Im folgenden Beispiel werden nur der Bindestrich (-) und das Einfügezeichen (^) zugelassen:
my_txt.restrict = "\\-\\^";
Das Einfügezeichen (^) kann an jeder beliebigen Stelle im String verwendet werden, um Zeichen ein- oder auszuschließen. Im folgenden Beispiel werden alle Großbuchstaben außer Q akzeptiert:
my_txt.restrict = "A-Z^Q";
Sie können die Escape-Sequenz
my_txt.restrict = "\u0020-\u007E";
Die Maßeinheit für den horizontalen Bildlauf sind Pixel, die Maßeinheit für den vertikalen Bildlauf Zeilen. Der horizontale Bildlauf wird in Pixeln gemessen, da die am häufigsten verwendeten Schriftarten normalerweise Proportionalschriftarten sind, die unterschiedlich breite Zeichen aufweisen. Flash Player nimmt den vertikalen Bildlauf nach Zeilen vor, da Benutzer normalerweise eine Textzeile vollständig und nicht nur teilweise sehen möchten. Hierbei kommt es nicht darauf an, ob eine Zeile mehrere Schriftarten enthält, da die Höhe der Zeile immer an die größte verwendete Schriftart angepasst wird.
Hinweis: Die Eigenschaft
Die Maßeinheit für den vertikalen Bildlauf sind Zeilen, die Maßeinheit für den horizontalen Bildlauf Pixel. Wenn die erste angezeigte Zeile auch die erste Zeile im Textfeld ist, hat „scrollV“ den Wert 1 (nicht 0). Der horizontale Bildlauf wird in Pixeln gemessen, da die meisten Schriftarten Proportionalschriftarten sind, die unterschiedlich breite Zeichen aufweisen. Flash Player nimmt den vertikalen Bildlauf nach Zeilen vor, da Benutzer normalerweise eine Textzeile vollständig und nicht nur teilweise sehen möchten. Selbst wenn eine Zeile mehrere Schriftarten enthält, wird die Höhe der Zeile an die größte verwendete Schriftart angepasst.
Wenn
Führen Sie dieses Beispiel aus, und versuchen Sie, durch Klicken in die TextField-Instanz Text auszuwählen. Klicken Sie anschließend in das Feld, ohne Text auszuwählen. Wenn Sie in den Text klicken, ohne eine Auswahl vorzunehmen, gibt die Eigenschaft
Führen Sie dieses Beispiel aus, und versuchen Sie, durch Klicken in die TextField-Instanz Text auszuwählen. Klicken Sie anschließend in das Feld, ohne Text auszuwählen. Wenn Sie in den Text klicken, ohne eine Auswahl vorzunehmen, gibt die Eigenschaft
sharpness
set to 400
, 0
, and -400
.
It assumes that you have a font
embedded in the Library with the linkage identifier set to "Times-12"
.
To embed the font, follow these steps:
Sie können das mit einem Textfeld verknüpfte Stylesheet jederzeit ändern. Bei Änderung des verwendeten Stylesheets wird das Textfeld mit dem neuen Stylesheet neu gezeichnet. Wenn Sie das Stylesheet entfernen möchten, setzen Sie es auf
Hinweis: Wenn das Stylesheet entfernt wird, wird der Inhalt von
Verwenden Sie die Eigenschaft
Zum Vergleich werden die gleichen Schritte mit einem weiteren TextField-Objekt mit der Bezeichnung
thickness
of -200 to one
and 200 to the other. It assumes that you have a font
embedded in the Library with the linkage identifier set to "Times-12"
.
To embed the font, follow these steps:
Der Wert für
Bevor Sie die Eigenschaften eines TextFormat-Objekts einstellen können, müssen Sie das Objekt mithilfe des Konstruktors
Die Standardformatierung für die einzelnen Eigenschaften befindet sich auch in den einzelnen Eigenschaftsbeschreibungen.
Jeder Parameter kann auf den Wert
Im Textfeld
Die
Wenn ein Benutzer auf das Textfeld
Bestimmte Schriftarten wie Verdana und Schriftarten mit fester Breite wie Courier New unterstützen Kerning nicht.
Der Standardwert
Hinweis: Damit der Hyperlink funktioniert, muss für den Text mit dem zugewiesenen Textformat die Eigenschaft
Die Verwendung von Geräteschriftarten führt zu einer Reduzierung der Filmgröße, da die Schriftartdaten nicht in der Datei gespeichert werden. Geräteschriftarten sind häufig eine gute Wahl zur Anzeige von Text mit kleiner Schriftgröße, da das Anti-Aliasing hierbei häufig zu unscharfen Ergebnissen führt. Geräteschriftarten sind auch eine gute Wahl für große Textblöcke wie z. B. Bildlauftext.
Textfelder mit Geräteschriftarten werden unter Umständen auf verschiedenen Systemen und Plattformen unterschiedlich angezeigt, da die jeweils auf dem System installierten Schriftarten verwendet werden. Aus dem gleichen Grund findet bei Geräteschriftarten kein Anti-Aliasing statt, was bei großen Schriftgrößen zu einer gezackten Darstellung führen kann.
Text, der eingebettete CFF-Schriftarten verwendet, wird immer und unabhängig davon, ob die Schriftart auf dem Wiedergabesystem installiert ist, in der gewählten Schriftart angezeigt. Außerdem wird Text, der eingebettete CFF-Schriftarten verwendet, immer von Flash Player geglättet. Sie können den Wiedergabemodus und Hinweise für eine eingebettete CFF-Schriftart über die Eigenschaft
Ein Nachteil eingebetteter CFF-Schriftarten ist, dass sie die SWF-Datei vergrößern. Eingebettete CFF-Schriftarten sind jedoch normalerweise 20 bis 30 % kleiner als reguläre eingebettete Schriftarten.
Schriftarten des Typs
Textfelder mit eingebetteten Schriftarten werden immer in der gewünschten Schriftart angezeigt. Dies erfolgt unabhängig davon, ob die Schriftart auf dem Wiedergabesystem installiert ist. Textfelder mit eingebetteten Schriftarten werden außerdem immer durch Anti-Aliasing geglättet. Der Umfang des Anti-Aliasing kann mit der Eigenschaft
Eingebettete Schriftarten haben den Nachteil, dass sie die Größe der SWF-Datei erheblich vergrößern.
Schriftarten des Typs
Aus dem Beispiel geht zudem hervor, wie die
Wenn Sie das erweiterte Anti-Aliasing für ein Textfeld verwenden möchten, setzen Sie die
Erweitertes Anti-Aliasing bietet Continuous Stroke Modulation (CSM), d. h. die fortlaufende Modulierung von Strichstärke und Kantenschärfe. Zu den erweiterten Funktionen gehört die Möglichkeit, mit der
Hinweise:
"myArial"
.
To embed the font, follow these steps:
Das Array
Beim erweiterten Anti-Aliasing werden die Konturen, die ein Zeichen bestimmen, mittels ADFs (Adaptively Sampled Distance Fields) dargestellt. In Flash Player wird ein
Die Anpassung der Werte für den unteren und den oberen Schwellenwert wirken sich auf die Strichbreite und die Kantenschärfe aus. Der Abstand zwischen diesen beiden Parametern ist mit dem doppelten Filterradius klassischer Anti-Aliasing-Methoden vergleichbar. Ein geringer Abstand bewirkt schärfere Kanten, ein größerer Abstand weichere, stärker gefilterte Kanten. Bei einem Abstand von null ist das Bild mit der resultierenden Dichte ein Bi-level-Bild (Bitmapbild). Bei einem sehr großen Abstand entsteht ein Bild mit wasserfarbenähnlichen Kanten.
Normalerweise werden scharfe, kontrastreiche Kanten für kleinere Punktgrößen und weichere Kanten für Lauftext und höhere Punktgrößen bevorzugt.
Der untere Schwellenwert ist normalerweise ein negativer Wert, der obere Schwellenwert ein positiver. Ihr Mittelpunkt liegt normalerweise um 0. Wenn Sie diese Parameter ändern, um den Mittelpunkt in Richtung negativer Unendlichkeit zu verschieben, erhöht sich die Strichbreite. Bei Verschiebung des Mittelpunkts zur positiven Unendlichkeit hin wird die Strichbreite verringert. Beachten Sie, dass der untere Schwellenwert nicht größer als der obere Schwellenwert sein darf.
maxLevel
value for the entire
SWF file, and then displays a text field with the value set. For the
text in this example to display correctly, there must be a font symbol available with
a linkage identifier of "CustomFont"
.
Beim erweiterten Anti-Aliasing werden die Konturen, die ein Zeichen bestimmen, mittels ADFs (Adaptively Sampled Distance Fields) dargestellt. Je höher die Qualität, desto mehr Cache-Speicherplatz wird für ADF-Strukturen benötigt. Der Wert
Die Maße im Zusammenhang mit dem Textfeld, das die Textzeile enthält (z. B. das Maß „Textfeldhöhe“ im Diagramm), finden Sie unter „flash.text.TextField“.
Aus dem folgenden Diagramm gehen die Punkte und Maße eines Textfelds und der Textzeile innerhalb des Textfelds hervor:
Kontextinformationen zu den verschiedenen Eigenschaften finden Sie im Übersichtsdiagramm für diese Klasse.
Wenn Sie auf ein TextField-Objekt Stile anwenden möchten, weisen Sie das StyleSheet-Objekt der Eigenschaft
Hinweis: Ein Textfeld mit einem Stylesheet, das nicht bearbeitet werden kann. Mit anderen Worten: Ein Textfeld, bei dem die
Flash Player unterstützt einen Teilsatz der Eigenschaften aus der ursprünglichen CSS1-Spezifikation (
Wenn Sie die native CSS-Parsingfähigkeit erweitern möchten, können Sie diese Methode übersteuern, indem Sie eine Unterklasse der StyleSheet-Klasse erstellen.
Im Konstruktor wird ein mehrzeiliges Textfeld erstellt, und der Inhalt wird auf einen HTML-formatierten String festgelegt. (Die HTML-Tags „heading“ und „span“ werden nicht dargestellt, bevor der CSS-Stil angewendet wird.) Es wird ein
Wenn der Benutzer auf das Textfeld klickt, wird die
Nachstehend finden Sie ein Beispiel für Inhalt einer CSS-Datei, die mit diesem Beispiel verwendet werden kann. Bevor Sie dieses Beispiel ausführen, erstellen Sie eine Textdatei, kopieren Sie den nachstehenden CSS-Inhalt in diese Datei, speichern Sie sie unter dem Dateinamen
p { font-family: Times New Roman, Times, _serif; font-size: 14; font-Style: italic; margin-left: 10; } h1 { font-family: Arial, Helvetica, _sans; font-size: 20; font-weight: bold; } .bluetext { color: #0000CC; }
emphasized
to the
StyleSheet myStyleSheet
. The style includes two style properties: color
and fontWeight
. The style object is defined with the {}
operator.
myStyleSheet.setStyle("emphasized", {color:'#000000',fontWeight:'bold'});
You could also create a style object using an instance of the Object class, and
then pass that object (styleObj
) as
the style
parameter, as the next example shows:
The following information appears in the Output panel:The following information writes to the log file:
emphasized
fontWeight: bold
color: #000000
Note: Because Flash Player creates a copy of the style object
you pass to setStyle()
, the delete styleObj
command in the
code example reduces memory usage by deleting the original style object passed to
setStyle()
.
Flash Player erstellt eine Kopie des Stilobjekts, das dieser Methode übergeben wird.
Eine Liste der unterstützten Stile finden Sie in der Tabelle zur Beschreibung der StyleSheet-Klasse.
CSS-Stile werden im Allgemeinen für die Formatierung von HTML-Inhalten verwendet. Mit der
Die
Zum Erstellen eines TextSnapshot-Objekts ist kein Konstruktor erforderlich. Das Objekt wird von der Eigenschaft
Wenn Sie
Wenn Sie alle Zeichen durchsuchen möchten, übergeben Sie den Wert
Hinweis: Bei Verwendung der
Wenn alle Zeichen zurückgegeben werden sollen, übergeben Sie den Wert
Wenn Sie den Wert
Wenn Sie den Wert
Diese Methode funktioniert nur für Schriftarten ordnungsgemäß, die metrische Zeicheninformationen enthalten. Das Flash-Authoring-Tool nimmt diese Informationen für statische Textfelder jedoch standardmäßig nicht auf.
Diese Methode funktioniert nur für Schriftarten ordnungsgemäß, die metrische Zeicheninformationen enthalten. Das Flash-Authoring-Tool nimmt diese Informationen für statische Textfelder jedoch standardmäßig nicht auf. Aus diesem Grund kann die Methode an Stelle eines Indexwerts
Wenn Sie alle Zeichen auswählen oder die Auswahl für alle Zeichen aufheben möchten, übergeben Sie den Wert
Da Zeichen individuell als ausgewählt markiert sind, können Sie diese Methode mehrfach aufrufen, um mehrere Zeichen auszuwählen; d. h., durch Verwendung dieser Methode wird die Auswahl anderer Zeichen, die durch diesen Befehl gesetzt wurden, nicht aufgehoben.
Das farbige Rechteck, mit dem eine Auswahl markiert ist, wird nur für Schriftarten angezeigt, die metrische Zeicheninformationen enthalten. Flash nimmt diese Informationen für statische Textfelder standardmäßig nicht auf. In einigen Fällen bedeutet dieses Verhalten, dass ausgewählter Text nicht als ausgewählt auf dem Bildschirm angezeigt wird.