PSD-Zeichenflächen zählen und weiterverarbeiten¶
Bei einer PSD mit mehreren Zeichenflächen kann ImageConvert zusätzliche PSD-Dateien erzeugen und diese als eigene Eingänge weiterverarbeiten. Dafür arbeiten zwei Skripte zusammen: artboards.jsx zählt; das Exportskript erzeugt die Dateien. Ein bloßes Zusammenführen sichtbarer Ebenen nach WB-10 ist nicht derselbe Vorgang.
Voraussetzungen und tatsächlicher Fundort¶
- Photoshop muss die PSD mit ihren Zeichenflächen öffnen können. Normale Ebenengruppen sind nicht automatisch Artboards.
- Die zur Programmfassung gehörenden Skripte liegen im Unterordner
jsdes ImageConvert-Programmverzeichnisses. - Der C#-Caller sucht exakt die Literale
artboards.jsxundZeichenflaechen_Exportieren.jsx. Das Handbuch und die vorliegende Exportdatei heißen dagegenZeichenflaechen_exportieren.jsx. Diese Schreibweisen nicht still als auf jeder Plattform identisch behandeln; die reale Ablage muss zum Zielsystem und Aufrufer passen. - Das geöffnete Dokument braucht einen speicherbaren Quellpfad; der Export verwendet den Ordner des Quelldokuments. Dort muss das Programm Dateien erzeugen dürfen.
Für diesen automatischen PSD-Zweig ist im gelesenen Source kein eigener Kunden-Boolean und kein JSON-Key artboards belegt. Die Skripte müssen dafür nicht zusätzlich in eine kundenweite scripts-Liste eingetragen werden. Das wäre ein anderer, möglicherweise mehrfacher Aufruf. Allgemeine Skriptablage: ACT-05; Installation: Voraussetzungen.
Was Zählen und Exportieren jeweils tun¶
| Zustand | Belegter Ablauf |
|---|---|
| Keine oder genau eine gezählte Zeichenfläche | Kein zusätzlicher Export durch diesen Zweig; die PSD läuft regulär weiter. |
| Mehr als eine gezählte Zeichenfläche | Aufruf des Exportskripts; die Anzeige ergänzt ZF: n. |
| Zählskript fehlt | Meldung im Kundeninfoprotokoll; Zähler bleibt zunächst 0. |
| Zählrückgabe nicht als Ganzzahl lesbar | Ausnahme wird im Zählzweig abgefangen; kein belastbarer Nachweis „enthält keine Artboards“. |
| Exportskript fehlt oder schlägt fehl | Meldung im Kundeninfoprotokoll; ZF: n ist deshalb allein kein Erfolgsbeleg für alle Exportdateien. |
Die tatsächlich gelesene artboards.jsx prüft LayerSets auf Artboardmerkmale über DOM bzw. Action Manager und zählt auch verschachtelte Gruppen rekursiv. Als letzte Auswertung liefert sie die Zahl als String. Sie speichert oder exportiert keine PSD.
Das vorliegende Exportskript ermittelt Artboardcontainer über artboardEnabled und layerSectionStart. Bei mehr als einem Fund sucht es die jeweilige Gruppe nach Namen, dupliziert sie in ein neues Dokument und speichert dieses als PSD im Quellordner. Es arbeitet also nicht mit einem einzigen Export der gesamten PSD als flaches Webbild.
Vorgehen und Dateinamen¶
- Sichere die unveränderte PSD. Prüfe in Photoshop, dass die gewünschten Gruppen echte Zeichenflächen und eindeutig benannt sind.
- Prüfe beide realen Skriptdateien in
js, insbesondere den vom Caller erwarteten Exportnamen. Die Existenz einer Projektkopie ist kein Installationsnachweis. - Stelle die PSD in einen normalen überwachten Eingang. Der zusätzliche Export geschieht vor dem anschließenden regulären Verarbeiten der ursprünglichen Eingangsdatei.
- Ordne die erzeugten PSDs anhand des Quellenstamms und der Zeichenflächennamen zu. Beurteile Originalfamilie und zusätzliche Zeichenflächenfamilien getrennt.
- Kontrolliere Inhalt, Pixelmaße, Ebenen, Farbmodus und Profil der Ergebnisse sowie die Kundenmeldungen. Eine Zählanzeige oder die Zahl vorhandener Dateien allein genügt nicht.
Das Namensmuster des Skripts lautet:
Beispiel ohne Kundendaten: Aus motiv.psd und der Zeichenfläche Vorderseite entsteht motiv_Vorderseite.psd. Bei einem durch ImageConvert vergebenen Kollisionsappendix steht dieser laut History schon vor dem Zeichenflächensuffix, etwa motiv_2_Vorderseite.psd, nicht motiv_Vorderseite_2.psd. Das beschreibt die Reihenfolge der Namensbildung, keine allgemeine Kollisionsfreiheit.
Die History beschreibt die Zusatzdateien als neue Einträge im Eingang. Der C#-Ablauf setzt nach dem Export auch die Verarbeitung der ursprünglichen PSD fort; der Mehrfachzweig ist kein „Original überspringen“-Schalter. Für die spätere Familie gelten weiterhin Eingangsrolle, Ausgabefreigaben, Größen- und Bildbearbeitungsregeln. Siehe Eingangsrollen, Ausgänge und Namensbildung.
Grenzen der vorhandenen Exportfassung¶
Nicht automatisch auf das Artboardrechteck zugeschnitten: Das Skript erstellt das neue Dokument mit der Breite/Höhe des vollständigen Quelldokuments. Es liest hier nicht die Rechteckkoordinaten jeder Zeichenfläche für die neuen Außenmaße. Eine einzeln exportierte PSD muss deshalb nicht die Abmessungen ihres Artboards haben.
Ebenen und Farbmodus nicht pauschal unverändert: Die Fassung entfernt nach dem Duplizieren die letzte Ebene der kopierten Gruppe. Sie liest myMode, verwendet diesen Wert aber nicht als Modusargument beim Anlegen des neuen Dokuments; anschließend konvertiert sie auf das gelesene Profil. Vollständige Ebenenerhaltung und identischer Quellfarbmodus sind daraus nicht ableitbar.
Namen bleiben eine Voraussetzung: Der Export verwendet Gruppenname und Zeichenflächenname direkt, sucht mit layerSets.getByName und ersetzt im Quellenamen nur das kleingeschriebene .psd. Doppelte Namen, verschachtelte Artboards, unzulässige Dateinamenzeichen, bereits vorhandene Ziele oder eine anders geschriebene Quellenendung sind nicht durch eine allgemeine sichere Auflösung im Skript abgedeckt. Die normale Namensbereinigung ist kein Beweis, dass sie schon vor jedem Exportpfad greift.
Aktives Dokument muss stimmen: Die Fassung verwendet am Anfang app.documents[0], im Exporthelfer aber app.activeDocument. Die beiden Referenzen dürfen nicht unbesehen als in jeder Photoshop-Sitzung identisch vorausgesetzt werden.
Kein allgemeines LayerSet-Versprechen: Das Handbuch beschreibt im nachfolgenden Ebenenweg auch LayerSets[1].Merge und nimmt dabei eine einzelne Zeichenfläche an. Das ist eine andere Stufe als die vorgeschaltete Mehrfachaufteilung. Aus rekursivem Zählen folgt weder rekursiv fehlerfreier Export noch identische Behandlung beliebiger verschachtelter Strukturen.
Diese Grenzen werden hier dokumentiert, nicht durch ein neues Skript, geänderte Originaldateien oder einen ungeprüften Download verdeckt.
Quellen und Gültigkeit¶
ImageConvert-4.pdf, 09.10.2026, physisch S. 11–12, 39–40 und 92–93 (gedruckt S. 7–8, 35–36 und 88–89; History 21./23./29.04. und 05.05.2025). IC/Form1.cs, Intake-Revisionsliteral 20261013, Z. 183, 5813–5827 und 7426–7527. Direkt gelesene Originale: artboards.jsx, Z. 1–34; Zeichenflaechen_exportieren.jsx, Z. 1–112. Der Quellenstand belegt Aufrufe und Skriptlogik, nicht die Übereinstimmung mit einer installierten EXE oder einen neuen Photoshoplauf.