Im Expression-Editor stehen alle Funktionen im Tab Functions, sortiert in fünf Gruppen. Hier steht, was jede Funktion tut und welche Werte sie braucht. Die Gruppen stehen hier nicht alphabetisch wie im Tab, sondern danach, wie oft du sie brauchst: zuerst Logic, zuletzt Animation. Wie du eine Funktion einfügst, steht in Expression-Editor verwenden.
Funktionen schreibst du in Großbuchstaben, die Werte dahinter in Klammern und durch Kommas getrennt: MAX(10, 20). Text und Farben stehen in Backticks: `#0050ff`. In der Liste unten stehen in den Klammern Platzhalter. Setze dort deine eigenen Werte ein.
Logic
Bei IF, NOT, AND und OR zählen false, leerer Text und fehlende Werte als falsch. Alles andere zählt als wahr, auch die Zahl 0.
IF(bedingung, dann, sonst): gibtdannzurück, wennbedingungwahr ist, sonstsonst. Zum Beispiel ergibtIF(BIGGER(price, 100), 10, 0)10, wennpricegrößer als 100 ist, sonst 0.SWITCH(wert, fall1, ergebnis1, fall2, ergebnis2, …, standard): vergleichtwertder Reihe nach mit den Fällen und gibt das Ergebnis des ersten gleichen Falls zurück. Passt keiner, gibt esstandardzurück. Lassstandardnie weg: Ohne ihn prüftSWITCHden letzten Fall nicht.BREAKPOINTS(wert, start, grenze1, ergebnis1, grenze2, ergebnis2, …): gibt das Ergebnis der größten Grenze zurück, diewerterreicht. Liegtwertunter allen Grenzen, gibt esstartzurück. Ordne die Grenzen aufsteigend.BREAKPOINTS(headline.width, 60, 300, 48, 600, 36)ergibt 60 unter 300 Pixeln Breite, 48 ab 300 und 36 ab 600.EQUAL(a, b): wahr, wennaundbgenau gleich sind. Die Zahl5und der Text`5`sind nicht gleich.BIGGER(a, b): wahr, wennagrößer alsbist.BIGGEREQUAL(a, b): wahr, wennagrößer alsboder gleich ist.SMALLER(a, b): wahr, wennakleiner alsbist.SMALLEREQUAL(a, b): wahr, wennakleiner alsboder gleich ist.NOT(wert): wahr, wennwertfalsch ist, und umgekehrt.AND(a, b, …): wahr, wenn alle Werte wahr sind.OR(a, b, …): wahr, wenn mindestens ein Wert wahr ist.IS_EMPTY_STRING(wert): wahr, wennwertein leerer Text ist. Ein Text aus Leerzeichen ist nicht leer.PROJECT_STATE(kombinationen, seed): für Fortgeschrittene.kombinationenist eine Liste von Listen mit Varianten. Die Funktion bildet daraus jede mögliche Kombination und wählt mitseed, einer Zahl von 0 bis 1, eine davon aus. Das Ergebnis enthält die Werte der gewählten Varianten.
Helpers
QR_CODE(text): gibt die Adresse eines QR-Code-Bilds fürtextzurück, 150 × 150 Pixel groß. Nutze sie als Bild eines Bild-Elements, zum BeispielQR_CODE(website).FLATTEN_LIST(liste, pfad): holt aus jedem Eintrag einer Liste denselben Wert.FLATTEN_LIST(team, `name`)ergibt zum Beispiel alle Namen einer Collectionteam.ELEMENT(name, nummer, …): liest eine Kopie eines Elements aus, das sich mit Iteration wiederholt. Die erste Kopie hat die Nummer 0. Liegt die Wiederholung in einer anderen, folgen Name und Nummer der inneren Wiederholung:ELEMENT(`group1`, 0, `text1`, 2).FIND_DUPLICATE(name, nummer): liest das Element oder die Variable mit dem Namenname_nummeraus.FIND_DUPLICATE(`photo`, 2)liest zum Beispielphoto_2. Ohnenummerliest esnameselbst.GET_FEATURES(text): gibt die einzelnen Stücke der Zeilen eines Texts mit ihrer Schrift und ihren Maßen zurück, zum BeispielGET_FEATURES(headline).ITERATE_PATH_FEATURES(typ, anzahl, funktion): erzeugtanzahlPunkte eines Pfads der Arttyp, zum Beispiel`line`.funktionberechnet die Koordinaten jedes Punkts aus seiner Nummer, beginnend bei 0:ITERATE_PATH_FEATURES(`line`, 5, (i) => ({ x: i * 40, y: 0 })).
Math
Die Rechenfunktionen nehmen auch Listen und lesen Zahlen aus Text: `20px` zählt als 20.
Rechnen:
ADD(a, b, …): addiert alle Werte.SUB(a, b, …): zieht alle weiteren Werte vonaab.MULT(a, b, …): multipliziert alle Werte.DIV(a, b, …): teiltadurch alle weiteren Werte.POW(a, b):ahochb.SQRT(a): die Quadratwurzel.CBRT(a): die Kubikwurzel.ABS(a): der Betrag, also die Zahl ohne Minus.SIGN(a): -1 für negative Zahlen, 1 für positive, 0 für 0.EXP(a): e hocha.LOG(a, basis): der Logarithmus vonazurbasis. Ohnebasisder natürliche Logarithmus.
Runden: Zum normalen Runden nimmst du FLOOR(a + 0.5).
CEIL(a): rundet auf.CEIL(3.2)ergibt 4.FLOOR(a): rundet ab.FLOOR(3.7)ergibt 3.TRUNC(a): schneidet die Nachkommastellen ab.TRUNC(-3.7)ergibt -3.
Statistik und Zufall:
MAX(a, b, …): der größte Wert.MAX(10, 20)ergibt 20.MIN(a, b, …): der kleinste Wert.MEAN(a, b, …): der Durchschnitt.MEDIAN(a, b, …): der mittlere Wert. Gib die Zahlen einzeln an, nicht als Liste.RANDOM(min, max): eine Zufallszahl zwischenminundmax. Mit nur einem Wert liegt sie zwischen 0 und diesem Wert, ohne Werte zwischen 0 und 1. Sie ändert sich bei jeder neuen Berechnung.
Werte umrechnen:
PROJECT(x, a1, a2, b1, b2): rechnetxvom Bereicha1bisa2in den Bereichb1bisb2um. Werte außerhalb landen am Rand.PROJECT(50, 0, 100, 0, 1)ergibt 0.5.PROJECT_TO_UNIT_INTERVAL(x, a1, a2): rechnetxvom Bereicha1bisa2in den Bereich 0 bis 1 um.PROJECT_FROM_UNIT_INTERVAL(x, a1, a2): rechnetxvom Bereich 0 bis 1 in den Bereicha1bisa2um.
Winkel: Diese Funktionen rechnen im Bogenmaß, nicht in Grad. 180 Grad sind 3.14159.
SIN(a),COS(a),TAN(a): Sinus, Kosinus und Tangens.ASIN(a),ACOS(a),ATAN(a): die Umkehrfunktionen. Sie geben einen Winkel zurück.ATAN2(y, x): der Winkel zum Punkt mit den Koordinatenxundy. Achtung:ysteht vorne.SINH(a),COSH(a),TANH(a),ASINH(a),ACOSH(a),ATANH(a): die Hyperbelfunktionen und ihre Umkehrfunktionen.
Color
Alle Farbfunktionen nehmen eine Farbe als Text, zum Beispiel `#0050ff`. Die meisten geben eine neue Farbe als Hex-Code zurück.
menge ist ein Anteil von 0 bis 1 und ändert relativ zum bisherigen Wert: COLOR_LIGHTEN(farbe, 0.2) erhöht die Helligkeit um 20 % ihres bisherigen Werts. Ein Wert, der 0 ist, bleibt deshalb 0. Schwarz wird zum Beispiel mit COLOR_LIGHTEN nicht heller.
Helligkeit und Sättigung:
COLOR_LIGHTEN(farbe, menge): macht die Farbe heller.COLOR_DARKEN(farbe, menge): macht die Farbe dunkler.COLOR_LIGHTNESS(farbe, wert): setzt die Helligkeit fest aufwert. 0 ist Schwarz, 0.5 die volle Farbe, 1 Weiß.COLOR_SATURATE(farbe, menge): macht die Farbe kräftiger.COLOR_DESATURATE(farbe, menge): macht die Farbe blasser.COLOR_SATURATION(farbe, wert): setzt die Sättigung fest aufwert, von 0 (grau) bis 1 (voll).COLOR_GRAYSCALE(farbe): macht aus der Farbe ein Grau.COLOR_WHITEN(farbe, menge): erhöht den Weißanteil.COLOR_BLACKEN(farbe, menge): erhöht den Schwarzanteil.
Farbton, Kanäle und Deckkraft:
COLOR_ROTATE(farbe, grad): dreht den Farbton umgradGrad auf dem Farbkreis.180ergibt die Gegenfarbe.COLOR_NEGATE(farbe): kehrt die Farbe um. Aus Weiß wird Schwarz.COLOR_RED(farbe, wert),COLOR_GREEN(farbe, wert),COLOR_BLUE(farbe, wert): setzen den Rot-, Grün- oder Blauanteil aufwert, von 0 bis 255.COLOR_FADE(farbe, menge): macht die Farbe durchsichtiger.0.5halbiert ihre Deckkraft.COLOR_OPAQUE(farbe, menge): macht eine durchsichtige Farbe deckender.
Werte aus einer Farbe:
COLOR_CONTRAST(farbe1, farbe2): der Kontrast zwischen zwei Farben, von 1 (gleiche Helligkeit) bis 21 (Schwarz auf Weiß).COLOR_IS_DARK(farbe): wahr, wenn die Farbe dunkel ist.COLOR_IS_LIGHT(farbe): wahr, wenn die Farbe hell ist.COLOR_WHITE(farbe): der Weißanteil der Farbe, von 0 bis 100.COLOR_BLACK(farbe): der Schwarzanteil der Farbe, von 0 bis 100.
Beispiel: IF(COLOR_IS_DARK(brandColor), `#ffffff`, `#000000`) macht einen Text auf einer dunklen Markenfarbe weiß, sonst schwarz.
Animation
Werte, die sich in einem Video mit der Zeit ändern. Die aktuelle Zeit in Sekunden steht im Wert TIME. Du findest ihn im Tab Variables.
ANIMATE(zeit, keyframe1, keyframe2, …): berechnet den Wert zum Zeitpunktzeitaus den Keyframes. Fürzeitnimmst duTIME, die Zeit-Variable des Videos. Vor dem ersten Keyframe gilt dessen Wert, nach dem letzten der Wert des letzten.LINEAR(zeit, wert): ein Keyframe. Zum Zeitpunktzeithat die Eigenschaft den Wertwert. Vom vorigen Keyframe bis hierher ändert er sich gleichmäßig.CUBIC(zeit, wert, x1, y1, x2, y2): ein Keyframe mit geschwungenem Übergang.x1,y1,x2undy2sind die zwei Steuerpunkte der Kurve.x1undx2liegen zwischen 0 und 1.
Beispiel: ANIMATE(TIME, LINEAR(0, 0), LINEAR(1, 100)) steigt in der ersten Sekunde von 0 auf 100.