Benutzerhandbuch Abbrechen

Verwenden von Expressions zum Bearbeiten und Zugreifen auf Texteigenschaften

Bearbeiten Sie die Textstile und Texteigenschaften mithilfe von Expression-Steuerelementen.

Verwende Expressions, um die Textstile in beliebigen Text-Expressions oder in Animationsvorlagen zu steuern. Mit Expressions können Sie z. B.:

  • Mehrere Titel verknüpfen und deren Stile gleichzeitig aktualisieren (sehr nützlich für das Entwerfen von Titeln).
  • Schriftart, Größe und Stil über mehrere Textebenen hinweg synchron halten.
  • Globale Änderungen der Texteigenschaften vornehmen.
  • Lege Stilattribute einzelner Zeichen in einer Textebene fest.

Nachdem du diese für eine Textebene festgelegt hast, verweise auf deren Ebeneneigenschaften, um Änderungen in der gesamten Komposition problemlos anzuwenden.After Effects-Expressions verwenden Eigenschaften, um Textstilwerte zu lesen (Get), und Funktionsmethoden, um diese in die Expression-Engine zu schreiben(Set). Auf diese Weise kannst du Textstile über Textebenen hinweg verknüpfen oder Steuerelemente einrichten, damit sie animiert oder in einer Animationsvorlage verwendet werden können.

Vor dem Verwenden von Expressions zur Bearbeitung von Texteigenschaften

  1. Stelle die Expressions-Engine auf JavaScript ein, indem du Projekteinstellungen > Expressions > Expression-Engine JavaScript auswählst.
  2. Füge eine Expression zur Eigenschaft Quelltext einer Textebene hinzu.
  3. Wähle im Flyout-Menü für die Expression-Sprache die Option Text > Eigenschaften Texteigenschaften oder Text > Formatierung.

Verfügbare Textattribute

Die folgenden Attribute für den Textstil können mit dem Objekt „Stil“ ausgelesen und festgelegt werden:

  • Schrift
  • Schriftgröße
  • Faux Fett
  • Faux Kursiv
  • Großbuchstaben
  • Kapitälchen
  • Laufweite
  • Zeilenabstand
  • Auto-Zeilenabstand
  • Grundlinienverschiebung
  • Füllung (aktivieren/deaktivieren)
  • Flächenfarbe
  • Kontur (aktivieren/deaktivieren)
  • Konturfarbe
  • Konturbreite
  • Ziffernsatz
  • Skalierung
  • Kerning
  • Tsume
  • Grundlinienrichtung
  • Grundlinienoption
Im Flyout-Menü für die Expression-Sprache sind alle Texteigenschaften aufgelistet, aus denen gewählt werden kann.
Das Flyout-Menü für die Expression-Sprache listet alle Texteigenschaften auf, auch die, die derzeit in After Effects enthalten sind.

Die Eigenschaft Quelltext einer Textebene wird von Expressions als JavaScript-Zeichenfolge interpretiert. Der Text selbst kann mit sourceText gelesen werden, muss jedoch für das Objekt „style“ mit der setText-Methode festgelegt werden, falls Stilattribute geändert werden. Gehe einige der Beispiele durch.

Expressions für Textebenen mit Absätzen

Neue Textzeile

Verwende \r in einer Zeichenfolgen-Expression, um eine neue Textzeile zu beginnen. Wenn du z. B. den Originaltext einer Ebene in Großbuchstaben auf dieselbe Ebene in eine neue Zeile kopieren möchtest, verwende die folgende Expression:

text.sourceText + “\r” + text.sourceText.toUpperCase()
text.sourceText + “\r” + text.sourceText.toUpperCase()
  text.sourceText + “\r” + text.sourceText.toUpperCase()

Verfügbare Absatzattribute

Zusätzlich zu den Textstilattributen gibt es auch Absatzattribute. Diese können nur auf die gesamte Textebene angewendet werden. Die Absatzattribute sind nur in After Effects verfügbar.

  • Richtung
  • Alle-Zeilen-Setzer
  • Einzug erste Zeile
  • Ausrichtung
  • Zeilenabstand-Typ
  • Linker Rand
  • Rechter Rand
  • Abstand danach
  • Abstand davor
  • Hängende Roman-Interpunktion
Im Flyout-Menü „Expression-Sprache“ werden alle Absatzeigenschaften aufgelistet, einschließlich derer aus After Effects Beta.
Im Flyout-Menü „Expression-Sprache“ werden alle in After Effects enthaltenen Absatzeigenschaften aufgeführt.

Expression-Menü für PostScript-Schriftarten

Wenn sie in Expressions auf Schriftarten verweisen, müssen sie einen speziellen „Systemnamen“ (oder Vergleichbares) verwenden. Es wird empfohlen, diesen speziellen Namen aus dem Dialogfeld Text > Schriftart > Schriftart auswählen einzufügen, um Expression-Fehler zu vermeiden.

  • Öffne das Flyout-Menü Expression-Sprache und wähle Text > Schriftart aus. Dies öffnet ein Dialogfeld mit Dropdown-Menüs, in denen Sie das Schriftbild und die Schriftart auswählen können, die in die Expression eingefügt werden sollen.
Das Menü „Schrift“
Wähle im Menü „Expression-Sprache“ die Schrift und die Schriftart aus, die in die Expression eingefügt werden sollen.

Synchronisierung der Schriftarten

Schriftarten, auf die nur im Expressions-Editor verwiesen wird, werden nicht als vom Projekt verwendete Schriftarten aufgezeichnet. Um sicherzustellen, dass alle Schriftarten, auf die im Expressions-Editor verwiesen wird, automatisch synchronisiert oder im Dialogfeld Schriftarten auflösen ausgefüllt werden, verwende all diese Schriftarten auf einer Ebene, selbst wenn diese Ebenenquelle ausgeblendet ist.

Objekt „Stil“

Alle Formateigenschaften für eine Textebene liegen im Objekt „Stil“ vor, auf das du über die Eigenschaft Quelltext zugreifst:

// Verwendung des gesamten Pfads zur Quelltext-Eigenschaft:
text.sourceText.style
// Verwendung des generischen Namens für die aktuelle Eigenschaft:
thisProperty.style
// Verwendung des gesamten Pfads zur Quelltext-Eigenschaft: text.sourceText.style // Verwendung des generischen Namens für die aktuelle Eigenschaft: thisProperty.style
// Verwendung des gesamten Pfads zur Quelltext-Eigenschaft: 
text.sourceText.style 

// Verwendung des generischen Namens für die aktuelle Eigenschaft: 
thisProperty.style

Wenn du nur „style“ verwendest, entspricht dies den obigen Beispielen. Wenn aber Stilattribute aus mehreren Textebenen kombiniert werden, kann dies zu Verwirrung führen.

Die Stilattribute anderer Textebenen können ebenfalls gelesen werden. Verwende das Auswahlwerkzeug, um am Anfang des ersten oben gezeigten Beispiels eine Verknüpfung mit der anderen Textebene herzustellen.

// Zugriff auf das Objekt „Stil“ einer bestimmten Textebene
thisComp.layer(“Name der anderen Ebene”).text.sourceText.style;
// Zugriff auf das Objekt „Stil“ einer bestimmten Textebene thisComp.layer(“Name der anderen Ebene”).text.sourceText.style;
// Zugriff auf das Objekt „Stil“ einer bestimmten Textebene 

thisComp.layer(“Name der anderen Ebene”).text.sourceText.style;

Stilattribute einzelner Zeichen in einer Textebene

Du kannst jetzt nicht nur Text-Expressions verwenden, um Stilattribute der gesamten Textebene festzulegen, sondern auch Stilattribute für einzelne Zeichen in der Ebene festlegen. Ein Vorteil dieser zeichenweisen Steuerung besteht darin, dass Text automatisch neu fließt, beispielsweise beim Skalieren von Buchstaben, Verwenden hochgestellter Buchstaben und Verwenden einer anderen Schriftart. Dies ist genau so, wie du es bei der Formatierung von Unterzeichenfolgen im Bedienfeld Zeichen erwarten würdest.

Beispiele

Ändern der Schriftart für bestimmte Wörter

textourceTexttyle
etFont(“Montserrat-Light”)
etFont(“Gigantic”, 0, 6)etFont(“Gigantic”, 10, 6)etFont(“Gigantic”, 20)
textourceTexttyle etFont(“Montserrat-Light”) etFont(“Gigantic”, 0, 6)etFont(“Gigantic”, 10, 6)etFont(“Gigantic”, 20)
textourceTexttyle
etFont(“Montserrat-Light”) 
etFont(“Gigantic”, 0, 6)etFont(“Gigantic”, 10, 6)etFont(“Gigantic”, 20)
 

Anwenden der Formatierung „Fett“ auf die erste Zeile einer Textebene und Vergrößern

text.sourceText.style.setFontSize(100, 0, 30).setFauxBold(true, 0, 30)
text.sourceText.style.setFontSize(100, 0, 30).setFauxBold(true, 0, 30)
 text.sourceText.style.setFontSize(100, 0, 30).setFauxBold(true, 0, 30) 

 Anwenden der Option „Hochgestellt“ auf Zeichen

Um die Zeichenfolge zu verwenden, füge eine Textebene mit dem Text „1st and 2nd Place“ hinzu und wende Folgendes auf den Quelltext an.

textourceTexttyleetBaselineOption(“superscript”,1,2)etBaselineOption(“superscript”, 9, 2)
textourceTexttyleetBaselineOption(“superscript”,1,2)etBaselineOption(“superscript”, 9, 2)
textourceTexttyleetBaselineOption(“superscript”,1,2)etBaselineOption(“superscript”, 9, 2) 

Stil und Quelltext kombinieren

Text und Stil
Kombinieren von Stil und Quelltext

Damit sowohl der Wert des Stils als auch der tatsächliche Wert des Quelltexts ausgegeben werden, musst du die Funktionen getStyleAt und setText kombinieren. Im Folgenden finden Sie zwei Beispiele für diese Expression.

// Rückgabe der Werte für den Stil und den tatsächlichen Quelltext zum Zeitpunkt (kurzfristig): var sourceTextProperty = thisComp.layer(“MAIN TEXT”).text.sourceText; var newStyle = sourceTextProperty.getStyleAt(0,0); newStyle.setText(sourceTextProperty);
// Rückgabe der Werte für den Stil und den tatsächlichen Quelltext zum Zeitpunkt (kurzfristig): var sourceTextProperty = thisComp.layer(“MAIN TEXT”).text.sourceText; var newStyle = sourceTextProperty.getStyleAt(0,0); newStyle.setText(sourceTextProperty);
// Rückgabe der Werte für den Stil und den tatsächlichen Quelltext zum Zeitpunkt (kurzfristig): var sourceTextProperty = thisComp.layer(“MAIN TEXT”).text.sourceText; var newStyle = sourceTextProperty.getStyleAt(0,0); newStyle.setText(sourceTextProperty);
// Rückgabe der Werte für den Stil und den tatsächlichen Quelltext der vorherigen Ebene im Ebenenstapel: var sourceTextProperty = thisComp.layer(index - 1).text.sourceText; var newStyle = sourceTextProperty.getStyleAt(0,0); newStyle.setText(sourceTextProperty);
// Rückgabe der Werte für den Stil und den tatsächlichen Quelltext der vorherigen Ebene im Ebenenstapel: var sourceTextProperty = thisComp.layer(index - 1).text.sourceText; var newStyle = sourceTextProperty.getStyleAt(0,0); newStyle.setText(sourceTextProperty);
// Rückgabe der Werte für den Stil und den tatsächlichen Quelltext der vorherigen Ebene im Ebenenstapel: var sourceTextProperty = thisComp.layer(index - 1).text.sourceText; var newStyle = sourceTextProperty.getStyleAt(0,0); newStyle.setText(sourceTextProperty);
Dropdown der Schriftarten
Verknüpfen von Schriftarten oder Stilen mit einem Dropdown-Menü

Du kannst Dropdown-Menüs verwenden, um Textstile zu steuern, z. B. das Festlegen bestimmter Schriftarten für Textebenen. Dies ist hilfreich für Markenrichtlinien, Vorlagen, MoGRTS und mehr:

// Festlegen bestimmter Schriftarten für eine Textebene mit einem Dropdown-Menü-Steuerelement: var dropDownMenu = thisComp.layer(“LayerName”).effect(“Dropdown Menu Control”)(“Menu”); switch (dropDownMenu.value) { case 1 : text.sourceText.style.setFont(“Georgia”); break; case 2 : text.sourceText.style.setFont(“Impact”); break; default : text.sourceText.style.setFont(“Tahoma”); }
// Festlegen bestimmter Schriftarten für eine Textebene mit einem Dropdown-Menü-Steuerelement: var dropDownMenu = thisComp.layer(“LayerName”).effect(“Dropdown Menu Control”)(“Menu”); switch (dropDownMenu.value) { case 1 : text.sourceText.style.setFont(“Georgia”); break; case 2 : text.sourceText.style.setFont(“Impact”); break; default : text.sourceText.style.setFont(“Tahoma”); }
// Festlegen bestimmter Schriftarten für eine Textebene mit einem Dropdown-Menü-Steuerelement: var dropDownMenu = thisComp.layer(“LayerName”).effect(“Dropdown Menu Control”)(“Menu”); switch (dropDownMenu.value) { case 1 : text.sourceText.style.setFont(“Georgia”); break; case 2 : text.sourceText.style.setFont(“Impact”); break; default : text.sourceText.style.setFont(“Tahoma”); }

Haupttextebene

Master-Textebene
Texteigenschaften von „Textebene 1“ abrufen, aber Schriftgrad und Flächenfarbe überschreiben

Verknüpfe mehrere Textebenen mit einem Steuerelement für die Hauptschriftart, um den Textstil mehrerer Ebenen gleichzeitig zu steuern. Erstelle zwei Textebenen und füge die folgende Expression in den Quelltext einer der Ebenen ein:

// Abrufen aller Texteigenschaften einer Textebene:
thisComp.layer(“Textebene 1).text.sourceText.style;
// Abrufen aller Texteigenschaften einer Textebene: thisComp.layer(“Textebene 1”).text.sourceText.style;
// Abrufen aller Texteigenschaften einer Textebene: 
thisComp.layer(“Textebene 1”).text.sourceText.style;

Es ist möglich, den Stil einer Textebene abzurufen, bestimmte Texteigenschaften aber zu überschreiben, indem mit den Funktionen set Werte hinzugefügt werden. Im Folgenden findest du zwei Beispiele für die Verwendung von Flächenfarbe und Schriftgröße.

// Abrufen aller Texteigenschaften von „Textebene 1“ und Überschreiben von Flächenfarbe und Schriftgrad durch fest codierte Werte: var newStyle = thisComp.layer(“Textebene 1”).text.sourceText.style; newStyle.setFillColor(hexToRgb(“FF0000”)).setFontSize(100);
// Abrufen aller Texteigenschaften von „Textebene 1“ und Überschreiben von Flächenfarbe und Schriftgrad durch fest codierte Werte: var newStyle = thisComp.layer(“Textebene 1”).text.sourceText.style; newStyle.setFillColor(hexToRgb(“FF0000”)).setFontSize(100);
// Abrufen aller Texteigenschaften von „Textebene 1“ und Überschreiben von Flächenfarbe und Schriftgrad durch fest codierte Werte: var newStyle = thisComp.layer(“Textebene 1”).text.sourceText.style; newStyle.setFillColor(hexToRgb(“FF0000”)).setFontSize(100);
// Abrufen aller Texteigenschaften von „Textebene 1“ und Überschreiben von Flächenfarbe und Schriftgrad mit den aktuellen Texteigenschaften der Ebene: var newStyle = thisComp.layer(“Textebene 1”).text.sourceText.style; var currentFillColor = thisProperty.style.fillColor; var currentFontSize = thisProperty.style.fontSize; newStyle.setFillColor(currentFillColor).setFontSize(currentFontSize);
// Abrufen aller Texteigenschaften von „Textebene 1“ und Überschreiben von Flächenfarbe und Schriftgrad mit den aktuellen Texteigenschaften der Ebene: var newStyle = thisComp.layer(“Textebene 1”).text.sourceText.style; var currentFillColor = thisProperty.style.fillColor; var currentFontSize = thisProperty.style.fontSize; newStyle.setFillColor(currentFillColor).setFontSize(currentFontSize);
// Abrufen aller Texteigenschaften von „Textebene 1“ und Überschreiben von Flächenfarbe und Schriftgrad mit den aktuellen Texteigenschaften der Ebene: var newStyle = thisComp.layer(“Textebene 1”).text.sourceText.style; var currentFillColor = thisProperty.style.fillColor; var currentFontSize = thisProperty.style.fontSize; newStyle.setFillColor(currentFillColor).setFontSize(currentFontSize);

Beispiele

Im Folgenden findest du Beispiele dazu, wie du auf Werte von Texteigenschaften zugreifst und sie mit Expressions verwendest:

Schrift

Im Folgenden findest du Beispiele für den Zugriff auf Schrift, Schriftgröße, Faux Fett, Faux Kursiv, Laufweite und Zeilenabstand für eine Textebene:

// Rückgabe des Namens der Schriftart für die Textebene selbst: text.sourceText.style.font; // Rückgabe des Namens der von einer anderen Textebene verwendeten Schriftart: var otherLayer = thisComp.layer(“Name der anderen Ebene”); otherLayer.text.sourceText.style.font; // Rückgabe des Werts für den Schriftgrad der Textebene selbst: text.sourceText.style.fontSize; // Rückgabe des Werts für den Schriftgrad einer anderen Textebene: var otherLayer = thisComp.layer(“Name der anderen Ebene”); otherLayer.text.sourceText.style.fontSize; // Rückgabe eines booleschen Werts, der anzeigt, ob der Text einer Ebene Faux Fett ist oder nicht (True oder False): text.sourceText.style.isFauxBold; // Rückgabe eines booleschen Werts, der anzeigt, ob der Text einer Ebene Faux Kursiv ist oder nicht (True oder False), text.sourceText.style.isFauxItalic; // Rückgabe des Werts der Laufweite einer Textebene als Zahl: text.sourceText.style.tracking; // Rückgabe des Werts des Zeilenabstands einer Textebene als Zahl: text.sourceText.style.leading;
// Rückgabe des Namens der Schriftart für die Textebene selbst: text.sourceText.style.font; // Rückgabe des Namens der von einer anderen Textebene verwendeten Schriftart: var otherLayer = thisComp.layer(“Name der anderen Ebene”); otherLayer.text.sourceText.style.font; // Rückgabe des Werts für den Schriftgrad der Textebene selbst: text.sourceText.style.fontSize; // Rückgabe des Werts für den Schriftgrad einer anderen Textebene: var otherLayer = thisComp.layer(“Name der anderen Ebene”); otherLayer.text.sourceText.style.fontSize; // Rückgabe eines booleschen Werts, der anzeigt, ob der Text einer Ebene Faux Fett ist oder nicht (True oder False): text.sourceText.style.isFauxBold; // Rückgabe eines booleschen Werts, der anzeigt, ob der Text einer Ebene Faux Kursiv ist oder nicht (True oder False), text.sourceText.style.isFauxItalic; // Rückgabe des Werts der Laufweite einer Textebene als Zahl: text.sourceText.style.tracking; // Rückgabe des Werts des Zeilenabstands einer Textebene als Zahl: text.sourceText.style.leading;
// Rückgabe des Namens der Schriftart für die Textebene selbst: text.sourceText.style.font; // Rückgabe des Namens der von einer anderen Textebene verwendeten Schriftart: var otherLayer = thisComp.layer(“Name der anderen Ebene”); otherLayer.text.sourceText.style.font; // Rückgabe des Werts für den Schriftgrad der Textebene selbst: text.sourceText.style.fontSize; // Rückgabe des Werts für den Schriftgrad einer anderen Textebene: var otherLayer = thisComp.layer(“Name der anderen Ebene”); otherLayer.text.sourceText.style.fontSize; // Rückgabe eines booleschen Werts, der anzeigt, ob der Text einer Ebene Faux Fett ist oder nicht (True oder False): text.sourceText.style.isFauxBold; // Rückgabe eines booleschen Werts, der anzeigt, ob der Text einer Ebene Faux Kursiv ist oder nicht (True oder False), text.sourceText.style.isFauxItalic; // Rückgabe des Werts der Laufweite einer Textebene als Zahl: text.sourceText.style.tracking; // Rückgabe des Werts des Zeilenabstands einer Textebene als Zahl: text.sourceText.style.leading;

Füllung

Im Folgenden findest du Beispiele für den Zugriff auf Füllung und Flächenfarbe für eine Textebene:

// Rückgabe eines booleschen Werts, der angibt, ob auf den Text einer Ebene eine Füllung angewendet wird (True oder False):
text.sourceText.style.applyFill;
// Rückgabe des Werts der Flächenfarbe einer Textebene
// Standardmäßig wird ein Array der RGB-Werte auf einer Skala von 0 bis 1,0 zurückgegeben:
text.sourceText.style.fillColor zurück;
// Festlegen der Flächenfarbe einer Textebene mit setApplyFill und setFillColor
// setFillColor-Werte werden als RGB-Array auf einer Skala zwischen 0 und 1,0 definiert:
var newStyle = style.setApplyFill(true);
newStyle.setFillColor([1.0, 1.0, 1.0]);
// Festlegen der Flächenfarbe einer Textebene, wobei das RGB-Array mit Werten zwischen 0 und 1,0 durch hexToRGB ersetzt wird, um die Farbwerte als Hex-Werte zu definieren:
var newStyle = style.setApplyFill(true);
newStyle.setFillColor(hexToRgb(“FFFFFF”));
// Rückgabe eines booleschen Werts, der angibt, ob auf den Text einer Ebene eine Füllung angewendet wird (True oder False): text.sourceText.style.applyFill; // Rückgabe des Werts der Flächenfarbe einer Textebene // Standardmäßig wird ein Array der RGB-Werte auf einer Skala von 0 bis 1,0 zurückgegeben: text.sourceText.style.fillColor zurück; // Festlegen der Flächenfarbe einer Textebene mit setApplyFill und setFillColor // setFillColor-Werte werden als RGB-Array auf einer Skala zwischen 0 und 1,0 definiert: var newStyle = style.setApplyFill(true); newStyle.setFillColor([1.0, 1.0, 1.0]); // Festlegen der Flächenfarbe einer Textebene, wobei das RGB-Array mit Werten zwischen 0 und 1,0 durch hexToRGB ersetzt wird, um die Farbwerte als Hex-Werte zu definieren: var newStyle = style.setApplyFill(true); newStyle.setFillColor(hexToRgb(“FFFFFF”));
// Rückgabe eines booleschen Werts, der angibt, ob auf den Text einer Ebene eine Füllung angewendet wird (True oder False): 
text.sourceText.style.applyFill; 

// Rückgabe des Werts der Flächenfarbe einer Textebene 
// Standardmäßig wird ein Array der RGB-Werte auf einer Skala von 0 bis 1,0 zurückgegeben: 
text.sourceText.style.fillColor zurück; 

// Festlegen der Flächenfarbe einer Textebene mit setApplyFill und setFillColor 
// setFillColor-Werte werden als RGB-Array auf einer Skala zwischen 0 und 1,0 definiert: 
var newStyle = style.setApplyFill(true); 

newStyle.setFillColor([1.0, 1.0, 1.0]); 

// Festlegen der Flächenfarbe einer Textebene, wobei das RGB-Array mit Werten zwischen 0 und 1,0 durch hexToRGB ersetzt wird, um die Farbwerte als Hex-Werte zu definieren: 
var newStyle = style.setApplyFill(true); 

newStyle.setFillColor(hexToRgb(“FFFFFF”));

RGB-Werte der Füllung

// Rückgabe des Werts für Rot (R) der Flächenfarbe:
text.sourceText.style.fillColor[0];
// Rückgabe des Werts für Rot (R) der Flächenfarbe: text.sourceText.style.fillColor[0];
// Rückgabe des Werts für Rot (R) der Flächenfarbe: 

text.sourceText.style.fillColor[0];
Hinweis:

Um den Wert der Flächenfarbe für R, G oder B einer Textebene zurückzugeben, füge in Klammern 0, 1 bzw. 2 hinzu.

Strich

Im Folgenden findest du Beispiele für den Zugriff auf die Kontur, die Konturfarbe und die Konturbreite einer Textebene:

// Rückgabe eines booleschen Werts, der angibt, ob auf den Text einer Ebene eine Kontur angewendet wird (True oder False):
text.sourceText.style.applyStroke;
// Rückgabe des Werts der Konturfarbe einer Textebene
// Standardmäßig wird ein Array der RGB-Werte auf einer Skala von 0 bis 1,0 zurückgegeben:
text.sourceText.style.strokeColor zurück;
// Festlegen der Konturfarbe einer Textebene mit setApplyStroke und setStrokeColor:
// setStrokeColor-Werte werden als RGB-Array auf einer Skala zwischen 0 und 1,0 definiert:
var newStyle = style.setApplyStroke(true);
newStyle.setStrokeColor([1.0, 0.0, 0.0]);
// Festlegen der Konturfarbe einer Textebene, wobei das RGB-Array mit Werten zwischen 0 und 1,0 durch hexToRGB ersetzt wird, um die Farbwerte als Hex-Werte zu definieren:
var newStyle = style.setApplyStroke(true);
newStyle.setStrokeColor(hexToRgb(“FF0000”));
// Rückgabe des Werts der Konturbreite einer Textebene als Zahl:
text.sourceText.style.strokeWidth;
// Rückgabe eines booleschen Werts, der angibt, ob auf den Text einer Ebene eine Kontur angewendet wird (True oder False): text.sourceText.style.applyStroke; // Rückgabe des Werts der Konturfarbe einer Textebene // Standardmäßig wird ein Array der RGB-Werte auf einer Skala von 0 bis 1,0 zurückgegeben: text.sourceText.style.strokeColor zurück; // Festlegen der Konturfarbe einer Textebene mit setApplyStroke und setStrokeColor: // setStrokeColor-Werte werden als RGB-Array auf einer Skala zwischen 0 und 1,0 definiert: var newStyle = style.setApplyStroke(true); newStyle.setStrokeColor([1.0, 0.0, 0.0]); // Festlegen der Konturfarbe einer Textebene, wobei das RGB-Array mit Werten zwischen 0 und 1,0 durch hexToRGB ersetzt wird, um die Farbwerte als Hex-Werte zu definieren: var newStyle = style.setApplyStroke(true); newStyle.setStrokeColor(hexToRgb(“FF0000”)); // Rückgabe des Werts der Konturbreite einer Textebene als Zahl: text.sourceText.style.strokeWidth;
// Rückgabe eines booleschen Werts, der angibt, ob auf den Text einer Ebene eine Kontur angewendet wird (True oder False): 
text.sourceText.style.applyStroke; 

// Rückgabe des Werts der Konturfarbe einer Textebene 
// Standardmäßig wird ein Array der RGB-Werte auf einer Skala von 0 bis 1,0 zurückgegeben: 
text.sourceText.style.strokeColor zurück; 

// Festlegen der Konturfarbe einer Textebene mit setApplyStroke und setStrokeColor: 
// setStrokeColor-Werte werden als RGB-Array auf einer Skala zwischen 0 und 1,0 definiert: 
var newStyle = style.setApplyStroke(true); 

newStyle.setStrokeColor([1.0, 0.0, 0.0]); 

// Festlegen der Konturfarbe einer Textebene, wobei das RGB-Array mit Werten zwischen 0 und 1,0 durch hexToRGB ersetzt wird, um die Farbwerte als Hex-Werte zu definieren: 
var newStyle = style.setApplyStroke(true); 

newStyle.setStrokeColor(hexToRgb(“FF0000”)); 

// Rückgabe des Werts der Konturbreite einer Textebene als Zahl: 
text.sourceText.style.strokeWidth;

RGB-Werte für die Kontur

// Rückgabe des Werts für Grün (G) der Flächenfarbe:
text.sourceText.style.strokeColor[1];
// Rückgabe des Werts für Grün (G) der Flächenfarbe: text.sourceText.style.strokeColor[1];
// Rückgabe des Werts für Grün (G) der Flächenfarbe: 

text.sourceText.style.strokeColor[1];
Hinweis:

Um den Wert der Konturfarbe für R, G oder B einer Textebene zurückzugeben, fügen Sie in Klammern 0, 1 bzw. 2 hinzu.

getStyleAt-Funktion

Verwenden Sie diese get-Funktion, um den Stilwert eines bestimmten Zeichens zu einem bestimmten Zeitpunkt zurückzugeben. Index muss eine Zahl sein – der Index des Buchstabens oder des Zeichens, dessen Stil benötigt wird. atTime muss ebenfalls eine Zahl sein – der Zeitpunkt in der Komposition, zu dem der Stil abgerufen werden soll, falls der Stil Keyframes verwendet und sich im Laufe der Zeit ändert.

text.sourceText.getStyleAt(index, atTime);
text.sourceText.getStyleAt(index, atTime);
text.sourceText.getStyleAt(index, atTime);
Hinweis:

Die Verwendung von text.sourceText.style ist identisch mit der Verwendung von text.sourceText.getStyleAt(0,0).

// Abrufen des Stils des ersten Zeichens am Anfang des Schnittfensters: text.sourceText.getStyleAt(0,0);
// Abrufen des Stils des ersten Zeichens am Anfang des Schnittfensters: text.sourceText.getStyleAt(0,0);
// Abrufen des Stils des ersten Zeichens am Anfang des Schnittfensters: text.sourceText.getStyleAt(0,0);

Set-Funktionen

Zusätzliche set-Funktionen, die einzeln oder in Kombination verwendet werden können, um Stile über Ebenen hinweg anzupassen. Jede dieser Funktionen wird für das Objekt „Stil“ einer Eigenschaft Quelltext aufgerufen:

// Festlegen der Schriftart auf Arial:
styleetFont(“ArialMT”)
// Festlegen des Schriftgrads auf 80:
styleetFontSize(80
// Aktivieren von Faux Fett mit einem booleschen Wert:
styleetFauxBold(true)
// Aktivieren von Faux Kursiv mit einem booleschen Wert:
styleetFauxItalics(true)
// Aktivieren von Großbuchstaben mit einem booleschen Wert:
styleetAllCaps(true)
// Aktivieren von Kapitälchen mit einem booleschen Wert:
styleetSmallCaps(true)
// Festlegen der Laufweite als Zahl:
styleetTracking(10
// Festlegen des Zeilenabstands als Zahl:
styleetLeading(10
// Aktivieren des automatischen Zeilenabstands mit einem booleschen Wert:
styleetAutoLeading(true
// Festlegen des Grundlinienversatzes als Zahl:
styleetBaselineShift(10
// Festlegen der Konturbreite als Zahl:
styleetStrokeWidth(10
// Festlegen der ersten Zeile einer Textebene als fett und größer
textourceTexttyleetFontSize(100, 0, 30)etFauxBold(true, 0, 30)
// Festlegen von Zeichen als hochgestellt
textourceTexttyleetBaselineOption(“superscript”,1,2)etBaselineOption(“superscript”, 9, 2)
// Festlegen der Schriftart auf Arial: styleetFont(“ArialMT”) // Festlegen des Schriftgrads auf 80: styleetFontSize(80 // Aktivieren von Faux Fett mit einem booleschen Wert: styleetFauxBold(true) // Aktivieren von Faux Kursiv mit einem booleschen Wert: styleetFauxItalics(true) // Aktivieren von Großbuchstaben mit einem booleschen Wert: styleetAllCaps(true) // Aktivieren von Kapitälchen mit einem booleschen Wert: styleetSmallCaps(true) // Festlegen der Laufweite als Zahl: styleetTracking(10 // Festlegen des Zeilenabstands als Zahl: styleetLeading(10 // Aktivieren des automatischen Zeilenabstands mit einem booleschen Wert: styleetAutoLeading(true // Festlegen des Grundlinienversatzes als Zahl: styleetBaselineShift(10 // Festlegen der Konturbreite als Zahl: styleetStrokeWidth(10 // Festlegen der ersten Zeile einer Textebene als fett und größer textourceTexttyleetFontSize(100, 0, 30)etFauxBold(true, 0, 30) // Festlegen von Zeichen als hochgestellt textourceTexttyleetBaselineOption(“superscript”,1,2)etBaselineOption(“superscript”, 9, 2)
// Festlegen der Schriftart auf Arial: 
styleetFont(“ArialMT”) 

// Festlegen des Schriftgrads auf 80: 
styleetFontSize(80 

// Aktivieren von Faux Fett mit einem booleschen Wert: 
styleetFauxBold(true) 

// Aktivieren von Faux Kursiv mit einem booleschen Wert: 
styleetFauxItalics(true) 

// Aktivieren von Großbuchstaben mit einem booleschen Wert: 
styleetAllCaps(true) 

// Aktivieren von Kapitälchen mit einem booleschen Wert: 
styleetSmallCaps(true) 

// Festlegen der Laufweite als Zahl: 
styleetTracking(10 

// Festlegen des Zeilenabstands als Zahl: 
styleetLeading(10 

// Aktivieren des automatischen Zeilenabstands mit einem booleschen Wert: 
styleetAutoLeading(true 

// Festlegen des Grundlinienversatzes als Zahl: 
styleetBaselineShift(10 

// Festlegen der Konturbreite als Zahl: 
styleetStrokeWidth(10

// Festlegen der ersten Zeile einer Textebene als fett und größer
 textourceTexttyleetFontSize(100, 0, 30)etFauxBold(true, 0, 30)

// Festlegen von Zeichen als hochgestellt 
textourceTexttyleetBaselineOption(“superscript”,1,2)etBaselineOption(“superscript”, 9, 2) 

Alle set-Funktionen für Textstile können miteinander verkettet werden, um mehrere Attribute einfach zu setzen, ohne jedes Mal einen neuen Stil deklarieren zu müssen. Siehe folgendes Beispiel:

Hinweis:

Ein Semikolon wird erst eingefügt, nachdem das letzte Attribut festgelegt wurde. Wenn Sie jedes Attribut in einer eigenen Zeile angeben, wird die Kette leichter lesbar.

// Aktivieren der Füllung, Festlegen der Flächenfarbe, Festlegen der Grundlinie, Festlegen der Laufweite und Aktivieren des automatischen Zeilenabstands: text.sourceText.style .setApplyFill(true) .setFillColor(hexToRgb(“FFFFFF”)) .setBaselineShift(10) .setTracking(25) .setAutoLeading(true);
// Aktivieren der Füllung, Festlegen der Flächenfarbe, Festlegen der Grundlinie, Festlegen der Laufweite und Aktivieren des automatischen Zeilenabstands: text.sourceText.style .setApplyFill(true) .setFillColor(hexToRgb(“FFFFFF”)) .setBaselineShift(10) .setTracking(25) .setAutoLeading(true);
// Aktivieren der Füllung, Festlegen der Flächenfarbe, Festlegen der Grundlinie, Festlegen der Laufweite und Aktivieren des automatischen Zeilenabstands: text.sourceText.style .setApplyFill(true) .setFillColor(hexToRgb(“FFFFFF”)) .setBaselineShift(10) .setTracking(25) .setAutoLeading(true);

Zusätzliche Anwendungsfälle für Expressions im Quelltext

Das Hinzufügen einer Textebene zu einer Komposition und das Hinzufügen einer Expression zu deren Eigenschaft Quelltext ist eine gute Möglichkeit, die Eigenschaftswerte anderer Ebenen zu untersuchen. Die folgende Expression in einer Eigenschaft Quelltext meldet den Namen und Wert der Eigenschaft Deckkraft für die nächste Ebene in der Stapelreihenfolge von Ebenen.

var nextLayer = thisComp.layer(index + 1); nextLayer.name + “\rOpacity = ” + nextLayer.opacity.value;
var nextLayer = thisComp.layer(index + 1); nextLayer.name + “\rOpacity = ” + nextLayer.opacity.value;
var nextLayer = thisComp.layer(index + 1); nextLayer.name + “\rOpacity = ” + nextLayer.opacity.value; 

Im folgenden Beispiel wird der Name des Footage-Elements angegeben, das als Quelle der ersten Bildebene im Stapel zum aktuellen Zeitpunkt verwendet wird, für das der Schalter „Video“ eingestellt ist:

// Erstellen von sourceFootageName als leere Zeichenfolge: var sourceFootageName = “”; // Durchlaufen aller Ebenen in der Komposition für (var i = 1; i <= thisComp.numLayers; i++) { // Wenn i gleich dem Index der Ebene ist, mit der nächsten Schleife fortfahren: if (i == index) { continue; } // Festlegen von myLayer für die aktuelle Iteration der Schleife: var myLayer = thisComp.layer(i); // Wenn myLayer kein Video besitzt oder nicht aktiv ist, mit der nächsten Schleife/Ebene fortfahren: if ( !myLayer.hasVideo || !myLayer.active ) { continue; } // Wenn myLayer aktuell aktiv ist: if ( myLayer.active ) { try { // Festlegen von sourceFootageName auf den Namen der Quelle von myLayer: sourceFootageName = myLayer.source.name; } catch ( err ) { // Wenn myLayer keine Quelle hat, // Festlegen von sourceFootageName auf den Namen von myLayer: sourceFootageName = myLayer.name; } // Schleife beenden: break; } } // Anzeigen von sourceFootageName: sourceFootageName;
// Erstellen von sourceFootageName als leere Zeichenfolge: var sourceFootageName = “”; // Durchlaufen aller Ebenen in der Komposition für (var i = 1; i <= thisComp.numLayers; i++) { // Wenn i gleich dem Index der Ebene ist, mit der nächsten Schleife fortfahren: if (i == index) { continue; } // Festlegen von myLayer für die aktuelle Iteration der Schleife: var myLayer = thisComp.layer(i); // Wenn myLayer kein Video besitzt oder nicht aktiv ist, mit der nächsten Schleife/Ebene fortfahren: if ( !myLayer.hasVideo || !myLayer.active ) { continue; } // Wenn myLayer aktuell aktiv ist: if ( myLayer.active ) { try { // Festlegen von sourceFootageName auf den Namen der Quelle von myLayer: sourceFootageName = myLayer.source.name; } catch ( err ) { // Wenn myLayer keine Quelle hat, // Festlegen von sourceFootageName auf den Namen von myLayer: sourceFootageName = myLayer.name; } // Schleife beenden: break; } } // Anzeigen von sourceFootageName: sourceFootageName;
// Erstellen von sourceFootageName als leere Zeichenfolge: var sourceFootageName = “”; // Durchlaufen aller Ebenen in der Komposition für (var i = 1; i <= thisComp.numLayers; i++) { // Wenn i gleich dem Index der Ebene ist, mit der nächsten Schleife fortfahren: if (i == index) { continue; } // Festlegen von myLayer für die aktuelle Iteration der Schleife: var myLayer = thisComp.layer(i); // Wenn myLayer kein Video besitzt oder nicht aktiv ist, mit der nächsten Schleife/Ebene fortfahren: if ( !myLayer.hasVideo || !myLayer.active ) { continue; } // Wenn myLayer aktuell aktiv ist: if ( myLayer.active ) { try { // Festlegen von sourceFootageName auf den Namen der Quelle von myLayer: sourceFootageName = myLayer.source.name; } catch ( err ) { // Wenn myLayer keine Quelle hat, // Festlegen von sourceFootageName auf den Namen von myLayer: sourceFootageName = myLayer.name; } // Schleife beenden: break; } } // Anzeigen von sourceFootageName: sourceFootageName;

Speichern von Expressions als Vorgaben

Wähle die Eigenschaft Quelltext mit den hinzugefügten Expressions aus. Wähle anschließend Animation > Animationsvorgabe speichern aus, um die Expressions in anderen Projekten wiederzuverwenden. Animationsvorgaben werden im Bedienfeld Effekte und Vorgaben gespeichert.

Weitere Informationen finden Sie unter Überblick über Effekte und Animationsvorgaben.

Weitere Ressourcen zu Expressions

Da Sie jetzt einige der Konzepte im Zusammenhang mit Expressions verstanden haben, können Sie der Community beitreten, um echte Anwendungsbeispiele zu erhalten und Ihre Arbeit zu teilen.

Das AE Enhancers Forum bietet auch zahlreiche Beispiele und Informationen zu Expressions sowie Skripte und Animationsvorgaben.

Schneller und einfacher Hilfe erhalten

Neuer Benutzer?