Skripte in Adobe Photoshop sind in JavaScript, VBScript oder AppleScript geschriebene Programme, die Photoshop-Funktionen programmatisch steuern und über das einfache Aktionssystem hinaus vollständige Automatisierungslogik mit Schleifen, Bedingungen und externen Daten ermöglichen.
Was sind Skripte und Variablen in Photoshop?
Photoshop besitzt eine vollständige Skript-API, über die nahezu jede Funktion der Anwendung programmatisch gesteuert werden kann. Im Gegensatz zu Aktionen (Aktionen (Actions) & Batch-Verarbeitung in Photoshop) bieten Skripte echte Programmiermächtigkeit: Schleifen, Bedingungen, externe Datenbankanbindungen, Dateioperationen und komplexe Fehlerbehandlung.
Variablen (Datei → Variablen) sind eine spezielle Photoshop-Funktion für datengetriebene Grafiken: Eine PSD-Vorlage wird mit benannten Variablen versehen; eine CSV-Datei oder Datenquelle liefert die Inhalte; Photoshop generiert automatisch eine Variante pro Datensatz. Klassischer Anwendungsfall: Visitenkarten, Produktbilder oder Social-Media-Assets in großer Stückzahl.
Erklärung
Skriptsprachen
Photoshop unterstützt drei Skriptsprachen:
- JavaScript (.jsx): Plattformübergreifend; empfohlen für neue Skripte; läuft auf macOS und Windows.
- VBScript (.vbs): Nur Windows.
- AppleScript (.scpt): Nur macOS.
Der überwiegende Teil der Community und der Adobe-Dokumentation nutzt JavaScript (auch als ExtendScript bekannt). Seit Photoshop 2022 wird auch UXP (Unified Extensibility Platform) für Plugins unterstützt, was modernere JavaScript-Entwicklung erlaubt.
Skripte ausführen
Über Datei → Skripts → Skript ausführen lässt sich eine .jsx-Datei direkt laden und ausführen. Alternativ können Skripte in den Photoshop-Skriptordner kopiert werden, sodass sie direkt im Menü erscheinen:
- macOS:
/Applications/Adobe Photoshop [Version]/Presets/Scripts/ - Windows:
C:\Program Files\Adobe\Adobe Photoshop [Version]\Presets\Scripts\
Die ExtendScript-API
Die ExtendScript-API umfasst Klassen für:
- Application: Photoshop-Anwendung selbst (Version, Einstellungen, offene Dokumente).
- Document: Einzelnes geöffnetes Dokument (Größe, Auflösung, Farbraum, Ebenen).
- Layer/ArtLayer/LayerSet: Ebenen und Gruppen manipulieren.
- Channel: Kanäle lesen und beschreiben.
- Selection: Auswahlen erstellen und bearbeiten.
- HistoryState: Protokollzustände steuern.
Einfaches Beispiel (alle Ebenen benennen): ``javascript var doc = app.activeDocument; for (var i = 0; i < doc.layers.length; i++) { doc.layers[i].name = "Ebene_" + (i + 1); } ``
Vordefinierte Skripte
Photoshop enthält mehrere eingebaute Skripte unter Datei → Skripts:
- Bild-Prozessor: Stapelweise JPEG/TIFF/PSD-Export mit optionaler Aktionsanwendung – einfachste Batch-Lösung ohne eigenes Coding.
- Frames zu Ebenen laden: Alle Dateien eines Ordners als einzelne Ebenen in ein Dokument importieren – ideal für Stop-Motion oder Panorama-Stacks.
- Statistik: Erstellt Stapelstatistiken aus mehreren Bildern (z. B. Median für Rauschreduzierung aus Belichtungsreihen).
- Ebenenkompositionen als Dateien exportieren: Jede gespeicherte Ebenenkompositionen als eigene Datei exportieren.
Variablen (Data-Driven Graphics)
Über Datei → Variablen lassen sich Ebenen einer PSD-Datei mit Variablen verknüpfen:
- Sichtbarkeit: Ein Häkchen/Element wird angezeigt oder versteckt.
- Pixelersatz: Ein Bild-Layer wird durch eine externe Bilddatei ersetzt.
- Textinhalt: Ein Textlayer erhält dynamischen Textinhalt.
Datenquelle: Eine CSV-Datei definiert Spalten (= Variablennamen) und Zeilen (= Datensätze). Photoshop generiert pro Zeile eine Bildvariante automatisch.
Workflow Visitenkarten:
- PSD-Vorlage mit Textlayern für Name, Titel, E-Mail erstellen.
- Variablen über Datei → Variablen → Definieren diesen Layern zuweisen.
- CSV-Datei mit einer Zeile pro Person erstellen.
- Datei → Variablen → Datensätze importieren → CSV laden.
- Datei → Exportieren → Datensätze als Dateien → Alle Varianten generieren.
Beispiele
Rauschreduzierung per Stacking: Skript lädt alle Bilder einer Belichtungsreihe als Ebenen, konvertiert zum Photoshop: Smart Objects – Zerstörungsfreie Bildbearbeitung und wendet „Ebenen stapeln → Median" an → statistisches Rauschen verschwindet.
Automatischer Web-Sprite: Skript importiert Icons aus einem Ordner als Ebenen, berechnet optimales Grid-Layout und exportiert ein einzelnes Sprite-Sheet.
Visitenkarten-Massendruck: CSV mit 200 Mitarbeiter-Datensätzen → Variablen-Workflow erzeugt automatisch 200 individuelle Druckdateien (vgl. Druckvorbereitung in Photoshop (CMYK, Proof)).
Batch-Wasserzeichen mit individueller Position: Skript prüft Bildformat (Hochformat/Querformat) und positioniert das Wasserzeichen automatisch in der jeweils passenden Ecke – unmöglich mit reinen Aktionen.
In der Praxis
Schritt-für-Schritt (Bild-Prozessor):
- Datei → Skripts → Bild-Prozessor öffnen.
- Quellordner auswählen.
- Ausgabeformat und -pfad konfigurieren (JPEG + Qualität, oder TIFF, oder PSD).
- Optionale Aktion auswählen, die zusätzlich angewendet wird.
- Auf „Ausführen" klicken – kein Scripting-Wissen erforderlich.
Eigenes Skript entwickeln:
- Adobe ExtendScript Toolkit (ältere Versionen) oder Visual Studio Code mit Adobe-Extensions nutzen.
.jsx-Datei schreiben;app.activeDocumentals Einstiegspunkt.- Mit
$.writeln()debuggen – Ausgabe in der Konsole des Toolkits. - Fertige Datei in den Scripts-Presets-Ordner kopieren.
Profi-Tipp: Die offizielle Adobe Scripting Guide und das Adobe Photoshop Type Library Reference Guide (kostenlos als PDF auf der Adobe-Website) sind die wichtigsten Referenzdokumente – vollständiger als jedes Drittanbieter-Tutorial.
Vergleich & Abgrenzung
| Methode | Logik/Schleifen | Daten von extern | Einstieg |
|---|---|---|---|
| Aktionen (Actions) & Batch-Verarbeitung in Photoshop | Begrenzt (Bedingt) | Nein | Sehr einfach |
| Skripte (JS/ExtendScript) | Vollständig | Ja | Mittel–Schwer |
| Variablen + CSV | Begrenzt | Ja (CSV) | Einfach |
| UXP Plugins | Vollständig | Ja | Schwer |
Skripte vs. Aktionen: Aktionen sind schnell und ohne Programmierkenntnisse nutzbar, stoßen aber bei komplexer Logik an Grenzen. Skripte erfordern JavaScript-Kenntnisse, ermöglichen aber vollständige Automatisierungspipelines.
Variablen vs. Skripte: Variablen sind für datengetriebene Bildgenerierung optimiert und erfordern kein Coding. Für alles, was über Textersatz und Bildaustausch hinausgeht, sind Skripte die richtige Wahl.
Häufige Fragen (FAQ)
Welche JavaScript-Version unterstützt ExtendScript? ExtendScript basiert auf JavaScript 1.6 (ECMAScript 3) – ohne moderne Features wie Arrow Functions, Promises oder async/await. Für UXP-basierte Plugins steht modernes ES6+ zur Verfügung.
Kann man Node.js-Module in Photoshop-Skripten verwenden? Im klassischen ExtendScript nicht. UXP-Plugins unterstützen npm-Pakete und moderne JS-Ökosysteme.
Wie findet man heraus, was ein Skript tun kann? Die Adobe-Scripting-Dokumentation listet alle Klassen und Methoden. Alternativ: Aktionen aufzeichnen und in ExtendScript Toolkit abspielen – der Toolkit zeigt den generierten JavaScript-Code.
Sind Skripte systemübergreifend portierbar? JavaScript-Skripte (.jsx) sind plattformübergreifend. Zu beachten: Dateipfade unterscheiden sich (/ vs. \); absolute Pfade in Skripten machen sie von Systemen abhängig.
Kann man Skripte für andere als Aktionen verfügbar machen? Skripte, die in den Presets/Scripts-Ordner kopiert werden, erscheinen direkt im Menü Datei → Skripts. Alternativ: Skript in einer Aktion per „Skript einfügen" einbetten.
Verwandte Einträge
- Aktionen (Actions) & Batch-Verarbeitung in Photoshop – Einfache Makro-Automatisierung ohne Coding
- Photoshop: Smart Objects – Zerstörungsfreie Bildbearbeitung – Programmatische Bearbeitung von Smart Objects
- Timeline & Animation in Photoshop – Animation via Skript steuern
- Druckvorbereitung in Photoshop (CMYK, Proof) – Variablen-Workflow für Drucksachen
Weiterführend
- Adobe: Adobe Photoshop Scripting Guide (JavaScript) – PDF, kostenlos unter adobe.com/devnet
- Adobe: Photoshop Type Library Reference Guide – vollständige API-Referenz
- Evening, Martin: Adobe Photoshop for Photographers. Focal Press, 2022, S. 613–628 – Skripte und Variablen.
- Willmore, Ben: Photoshop – The Missing Manual. O'Reilly, 2009, S. 715–731 – Skripte und Aktionen im Vergleich.
