Zur Navigation springen | Zum Inhalt springen
Drucken Favoriten Weitersagen Sitemap

Skripten mit Photoshop

Autor:
hotschen
Schwierigkeit:
mittel
Kenntnisse:
-
Artikelbewertung:

Artikel bewerten


Probleme mit dem Artikel?

Zum Forum


Unsere Photoshop-DVD-Empfehlung


Photoshop-Workshop-DVD - Basics & Tricks
Photoshop-Workshop-DVD - Retusche & Composing
Photoshop-Workshop-DVD - Effekte für Layout, Typo & Photo

Photoshop-Workshop-DVD - Webdesign

1. Einleitung/Allgemeines

Dieses Tutorial richtet sich an Einsteiger, die noch nie etwas mit Photoshop gescriptet haben . Hab am Ende festgestellt, dass es sogar -tauglich ist. Es ist wirklich eine Step by Step Anleitung, also für erfahrene User sicher nicht wirklich intressant (Ändert sich aber dann im evtl. Folgendem) Geschrieben ist es (wie auch evtl. folgende) für Visual Basic Script (kurz VBS). Ich habe mich für diese Scriptsprache nur aus einem Grund entschieden...ich kann keine Andere. Man kann für PS in mehreren Sprachen coden:

Javascript (Vorteil: plattformunabhängig, direkt in PS aufrufbar
VBS (Nachteil: läuft nur unter Windows, nicht direkt in PS aufrufbar; Vorteil: Ich kann es (etwas)
AppleScript (Nachteil: läuft nur auf ...na ratet mal *gg*; Vorteil: )

Anfangs habe ich meine Scripte direkt in Visual Basic (VB) gecodet, was aber nicht nur Vorteile bringt, sondern den Nachteil, dass das Ganze am Ende in eine EXE-Datei kompiliert wird. Da im Zeitalter der Viren, Würmer und Trojaner nicht jeder eine beliebige EXE ausführen will/sollte (mich eingeschlossen), bin ich dann auf VBS umgestiegen, da hier der komplette Code sichtbar ist (OK, viele wissen damit auch nix anzufangen...). An meine komischen Schachtelsätze müsst ihr Euch gewöhnen, ich kann nicht anders
Der große Vorteil bei VB ist das erstellen einer GUI (General User Interface), auf der der User Eingaben machen kann, Funktionen aktivieren/deaktivieren kann etc. (OK, geht auch über Umwege mit dem InternetExplorer, würde aber hier etwas zu weit führen und ist in vielen Fällen ja auch gar nicht nötig) Allerdings benötigt man hier außerdem einen Compiler (z.B. Microsoft Visual Basic, welches ich bei einer Aktion vor ein paar Jahren kostenlos bekommen habe :-D ), wogegen für die Scriptsprache ein einfacher Editor ausreichend ist, jeder also selber experimentieren kann.


2. Voraussetzungen

Diese sind nicht allzu viel. Zum Einen benötigt man Photoshop ab v7 aufwärts, außerdem noch einen beliebigen Editor wie z.B. Notepad. Etwas komfortabler geht es natürlich mit Scripteditoren (heißt die Mehrzahl wirklich so? :?). Um nur einige zu nennen:

Spy 3.0 (Trial) – recht langsam, aber man kann die Scripte direkt ausführen/testen
Phase 5
Relo

Von Vorteil bzw. wenn man nicht nur abtippen, sondern auch selber was mach will, ist natürlich die VisualBasicReferenceGuide.pdf, die aber eigentlich jeder haben sollte (...\Adobe\Photoshop\Script Handbuch\) oder sich aber bei Adobe runterladen kann.
Am wichtigsten ist aber das Programm Brain v1.0 (manchmal auch schon 1.1), welches direkt gegenüber dem Monitor zu finden ist. Ein paar VB Kenntnisse wären natürlich auch nicht schlecht (aber für dieses Tut nicht notwendig. Wollen wir jetzt endlich mal was Scripten?


3. Das erste Script

3.1 Vorbereitung
Haha zu früh gefreut, wirklich scripten werden wir jetzt immer noch nicht. Für viele Sachen kann man das Scripten nämlich PS überlassen, also quasi wie bei Aktionen Sachen aufnehmen. Sofern nicht schon geschehen, aktiviert den ScriptListener (SL). Zu finden unter "...\Adobe\Photoshop CS\Skript Handbuch\Hilfsprogramme\ScriptListener.8li“. Also ab damit in Euren Pluginordner und los geht’s. Der Listener legt 2 Dateien an: "ScriptingListenerVB.log“ und "ScriptingListenerJS.log“. (Bei mir unter C:\ - ansonsten mal danach suchen). Für uns intressant ist natürlich nur die "ScriptingListenerVB.log“.

3.2 Wir zeichnen einen Kreis
Haha zu früh gefreut, wirklich scripten werden wir jetzt immer noch nicht. Für viele Sachen kann man das Scripten nämlich PS überlassen, also quasi wie bei Aktionen Sachen aufnehmen.
Sofern nicht schon geschehen, aktiviert den ScriptListener (SL). Zu finden unter "...\Adobe\Photoshop CS\Skript Handbuch\Hilfsprogramme\ScriptListener.8li“. Also ab damit in Euren Pluginordner und los geht’s. Der Listener legt 2 Dateien an: "ScriptingListenerVB.log“ und "ScriptingListenerJS.log“. (Bei mir unter C:\ - ansonsten mal danach suchen). Für uns intressant ist natürlich nur die "ScriptingListenerVB.log“.

Fangen wir also mal klein an: Wir lassen durch ein Script einen Kreis zeichnen. Wechseln wir also zu PS und erstellen ein neues Dokument. (Manche werden es sich schon gedacht haben, aber auch dieser Schritt wird durch den SL aufgezeichnet.) Den Schritt brauchen wir natürlich nicht (das machen wir später komfortabler), also löschen wir erst mal die "ScriptingListenerVB.log“. Nun ziehen wir ein kreisförmige Auswahl auf (bei gedrückter Shift-Taste) und füllen die Kontur (Menü Bearbeiten-->Kontur füllen, oder über Kontextmenü). (Ich habe einen Kreis gewählt, weil man den afaik nicht direkt per Befehl zeichnen lassen kann, würde mich aber freuen, wenn mir jemand etwas anderes berichten würde) Das war’s schon fürs erste. Öffnen wir jetzt die "ScriptingListenerVB.log“ in einem Editor. (Solltet ihr für log Dateien keine Verknüpfung haben, könnt ihr die Endung auch in "txt" umwandeln und anschließend per Doppelklick öffnen) Ihr seht nun ein absolutes Chaos aus Buchstaben und Zahlen, bei dem man nur recht schwer durchsteigen kann...aber keine Angst, das wird noch. (Nicht dadurch entmutigen lassen, später wird’s übersichtlicher) Jeder aufgezeichnete Befehl fängt mit "REM =====" an. Und schon haben wir das erste gelernt, eine Zeile die mit REM beginnt (oder auch mit ') nicht als Befehl, sondern als Kommentar interpretiert wird.

Bei mir sind alle Befehle doppelt vorhanden, hab es einfach immer ignoriert, da ich eh kaum mal was aufzeichne und mir das richtige rauskopiert
Der erste Befehl sollte bei Euch also ähnlich aussehen wie dieser:


Kopieren wir nun diesen Teil in einen Editor unserer Wahl und speichern das ganze als ‚Auswahl.vbs’ in einem beliebigen Ordner. Wechseln wir jetzt noch mal fix zu PS und erstellen ein neues Dokument. Nun im Dateibrowser (z.B. WIN-Explorer, aber wer nutzt den schon ) und starten unser Script ("Auswahl.vbs") per Doppelklick. Was hatten wir doch als erstes in PS aufgezeichnet?
Genau, wir haben eine Auswahl erstellt. Schauen wir doch mal in PS nach...oh, hat geklappt. Öffnen wir also unser Script wieder im Editor und fügen den 2. Befehl (Kontur füllen) hintendran, der in etwa so aussehen sollte:


Die oberen Zeilen des 2. Befehls (bis einschließlich "dialogMode=3") löschen wir, da ja das selbe oben schon einmal steht. Speichern wir das Script wieder -->neues dokument oder neue Ebene in PS anlegen -->Script ausführen und siehe da, der gleiche Kreis, den wir am Anfang gezeichnet haben strahlt uns entgegen, wir haben unser erstes Script zum laufen gebracht. Jetzt denkt mit Sicherheit jeder: "Und was hat uns das gebracht?“ Nuja, recht habt ihr....bis jetzt nichts, aber schauen wir uns den Code(das Script) doch mal an....


2.3 Wir verändern den Kreis

Öffnen wir das Script also mal wieder im Editor. Fallen Euch nicht auch die 4 Zahlen (in meinem Bsp. 87.0, 71.0, 434.0, 418.0) auf? Schaut mal jeweils 3 Zeilen höher: "Top“, "Left“, "Btom“ (Bottom), "Rght" (Right). Das klingt doch schon ganz aufschlussreich. Dies sind die Koordinaten, mit welchen wir die Auswahl gezeichnet haben. Ersetzen wir doch die Zahlen einfach mal durch Variablen (Wer nicht weiß, was Variablen sind, sollte mal Google bemühen, dazu hab ich jetzt keinen Bock mehr.) Also wird:

87.0 zu "oben"
71.0 zu "links"
434.0 zu "unten"
418.0 zu "rechts"

Nun können wir im Code die Variablen ändern, indem wir ihnen andere Werte zuweisen. Fügen wir also in unserem Script an oberster Stelle folgendes ein:


Ich bin davon ausgegangen, dass ein Dokument mit 500x500px geöffnet ist, ansonsten die Zahlen an eure Maße anpassen.
Führen wir das Script nun aus, erhalten wir einen Kreis, der das komplette Dokument ausfüllt.

So, das sollte fürs erste auch reichen. Gebt einfach mal unterschiedliche Werte für die Koordinaten ein, um zu sehen wie es funktioniert.
Genauso könnt ihr auch weitere Befehle ausführen, aufzeichnen und im Script verarbeiten. Keine Angst, man kann nix kaputt machen .

Fazit: Ob Ihr was gelernt habt weiß ich nicht, aber ich weiß jetzt, dass mein nächstes Tut kürzer ausfallen wird. Bin entsetzt, ist ja ein halber Aufstzt geworden. . Hab mir aber gedacht, dass ein Einsteigertutorial auch Step by Step erklärt werden sollte.


Lust, selbst einen Artikel zu schreiben?
Das Photozauber Team dankt für jede Unterstützung Eurerseits.