Photoshop CS5-Handbuch für Skriptprogrammierung

download Photoshop CS5-Handbuch für Skriptprogrammierung

of 87

Transcript of Photoshop CS5-Handbuch für Skriptprogrammierung

ADOBE PHOTOSHOPCS5 HANDBUCH FR SKRIPTPROGRAMMIERUNG

2010 Adobe Systems Incorporated. All rights reserved. Adobe Creative Suite5 Photoshop Handbuch fr Skriptprogrammierung Adobe, the Adobe logo, Illustrator, and Photoshop are either registered trademarks or trademarks of Adobe Systems Inc. in the United States and/or other countries. Apple and Mac OS are trademarks of Apple Computer, Inc., registered in the United States and other countries. Microsoft and Windows are either registered trademarks or trademarks of Microsoft Corporation in the United States and other countries. JavaScript and all Java-related marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries. All other trademarks are the property of their respective owners. The information in this document is furnished for informational use only, is subject to change without notice, and should not be construed as a commitment by Adobe Systems Inc. Adobe Systems Inc. assumes no responsibility or liability for any errors or inaccuracies that may appear in this document. The software described in this document is furnished under license and may only be used or copied in accordance with the terms of such license. Adobe Systems Inc., 345 Park Avenue, San Jose, California 95110, USA.

Inhalt1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6Einfhrung in dieses Handbuch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Konventionen in diesem Handbuch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2

Photoshop Grundlagen der Skripterstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8Skripterstellung im berblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Warum Skripten statt Aktionen? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Untersttzung der Skripterstellung in Photoshop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 JavaScript-Untersttzung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Ausfhren anderer Skripten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Start-Skripten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Ausfhren von JavaScripts aus AS oder VBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Photoshop-Objektmodell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Enthaltenseinshierarchie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Application- und Document-Klassen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Layer-Klassen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Layer Comp-Klasse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Channel-Klasse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selection-Klasse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . History State-Klasse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Document Info-Klasse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Path Item-, Sub Path Item- und Path Point-Klasse . . . . . . . . . . . . . . . . . . . . . . . . . . . . Preferences-Klasse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Notifier-Klasse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Count Item-Klasse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Color Sampler-Klasse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measurement Scale-Klasse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Die Enthaltenseinshierarchie und die Photoshop-Benutzeroberflche . . . . . . . . . . . . . . . . Weitere Objekte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Konstanten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Erstellen eines Beispielskripts Hello World . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Erstellen und Ausfhren eines AppleScripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Erstellen und Ausfhren eines VBScripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Erstellen und Ausfhren eines JavaScripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 11 12 12 13 13 13 13 13 14 14 14 14 14 14 14 16 16 17 18 19 19

3

Skripting in Photoshop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21Anzeigen von Objekten, Befehlen und Methoden in Photoshop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Anzeigen des AppleScript-Wrterbuchs von Photoshop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Anzeigen der Photoshop Type Library (VBS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 Festlegen des Application-Objekts als Ziel und Erstellen von Verweisen . . . . . . . . . . . . . . . . . . . . . . . 22 Erstellen neuer Objekte in einem Skript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Festlegen des aktiven Objekts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Festlegen des aktiven Dokuments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263

Inhalt

4

Festlegen der aktiven Ebene . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Festlegen der aktiven Kanle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ffnen eines Dokuments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ffnen einer Datei mit dem Standarddateiformat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Angeben der zu ffnenden Dateiformate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Speichern eines Dokuments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Festlegen von Anwendungsvoreinstellungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Zulassen oder Verhindern von Dialogfeldern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Arbeiten mit dem Objektmodell von Photoshop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verwenden des Application-Objekts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verwenden des Document-Objekts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Manipulieren eines Document-Objekts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Arbeiten mit Layer-Objekten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Erstellen eines ArtLayer-Objekts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Erstellen eines Layer Set-Objekts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verweisen auf ArtLayer-Objekte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Arbeiten mit LayerSet-Objekten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verknpfen von Layer-Objekten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Anwenden von Stilen auf Ebenen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verwenden des Text Item-Objekts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Festlegen einer Ebenenart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Hinzufgen und Manipulieren von Text in einem Text Item-Objekt . . . . . . . . . . . Arbeiten mit Selection-Objekten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Erstellen und Definieren einer Auswahl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Zuweisen einer Kontur fr die Auswahlbegrenzung . . . . . . . . . . . . . . . . . . . . . . . . . . Umkehren von Auswahlen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Erweitern und Verkleinern ausgewhlter Bereiche und Hinzufgen weicher Kanten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fllen einer Auswahl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Laden und Speichern von Auswahlen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Arbeiten mit Channel-Objekten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ndern von Kanaltypen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verwenden des DocumentInfo-Objekts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verwenden von HistoryState-Objekten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verwenden von Notifier-Objekten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verwenden des PathItem-Objekts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Arbeiten mit Color-Objekten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Volltonfarben-Klassen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verwenden von Hexadezimalwerten fr RGB-Farben . . . . . . . . . . . . . . . . . . . . . . . . . Abrufen und Konvertieren von Farben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Vergleichen von Farben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Abrufen einer websicheren Farbe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 34 34 35 36 37 38 38 39 40 40 41 41 42 42 43 44 44 44 45 45 46 46 47 47 48 49 51 52 52 52 53 53

Arbeiten mit Filtern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Sonstige Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Verwenden der Zwischenablage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Verwenden der Befehle zum Kopieren und Einfgen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Verwenden des Befehls/der Methode Auf eine Ebene reduziert kopieren . . . . . . . . . . . . 55

Inhalt

5

Arbeiten mit Maeinheiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Maeinheitenwerte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Besondere Datentypen fr Maeinheitenwerte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . berlegungen zu Maeinheiten in AppleScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verwenden von Maeinheitenwerten in Berechnungen . . . . . . . . . . . . . . . . . . . . . . Verwendung von Maeinheitenwerten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Festlegen von Lineal- und Texteinheiten in einem Skript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Erweiterte Skripterstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Arbeiten mit Voreinstellungen fr Dokumente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Anwenden von Farbe auf ein Textelement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Anwenden eines Schwingungen-Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Definieren des Bereichs eines Auswahlobjekts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Anwenden eines Bewegungsunschrfe-Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

56 56 56 56 57 57 59 60 61 64 66 67 71

JavaScript-Beispiele fr die Automatisierung des Workflows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

4

Action Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73ScriptListener-Zusatzmodul . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Installieren von ScriptListener . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Action Manager-Skriptobjekte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 Aufzeichnen eines Skripts mit ScriptListener . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 Verwenden des Action Manager aus JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 Verwenden des Action Manager aus einem VBS-Skript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 Ausfhren von Action Manager-Code auf JavaScript-Basis aus VBScript . . . . . . . . . . . . . . . . . . . . . . . 79 Ausfhren von Action Manager-Code auf JavaScript-Basis aus AppleScript . . . . . . . . . . . . . . . . . . . . 80 Suchen von Ereignis-IDs und Klassen-IDs ber ScriptListener . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

1

Einfhrung

Einfhrung in dieses HandbuchDieses Handbuch bietet eine Einfhrung in die Skripterstellung in Adobe PhotoshopCS5 unter MacOS und Windows. In Kapitel1 werden die grundlegenden Konventionen beschrieben, die in diesem Handbuch gelten. In Kapitel2 erhalten Sie einen kurzen berblick ber die Skripterstellung, das Ausfhren von Skripten und das Objektmodell von Photoshop. In Kapitel3 werden die fr Photoshop spezifischen Objekte und Komponenten behandelt und die erweiterten Skriptingmethoden fr Photoshop beschrieben. Die Beispielcodes werden in drei Skriptsprachen angegeben:

AppleScript VBScript JavaScriptTM

HINWEIS: ber die mit dieser Installation bereitgestellten Skriptreferenzhandbcher stehen fr jede der Sprachen separate Photoshop-Skriptreferenzinformationen zur Verfgung. Diese knnen alternativ auch ber die Objektkataloge zu den einzelnen Sprachen aufgerufen werden. Siehe Anzeigen des AppleScript-Wrterbuchs von Photoshop auf Seite 21 und Anzeigen der Photoshop Type Library (VBS) auf Seite 22. Informationen zum Extend Script Object Model Viewer finden Sie im JavaScript Tools Guide. In Kapitel4 wird der Action Manager beschrieben, mit dem Sie Skripten fr Photoshop-Funktionen schreiben knnen, die in der Skripting-Oberflche sonst nicht zugnglich sind. HINWEIS: Beachten Sie auch die Datei Bitte lesen, die im Lieferumfang von Photoshop enthalten ist. Dort finden Sie aktuellste Informationen, Skriptbeispiele und Informationen zu Problemlsungen.

Konventionen in diesem HandbuchCode und spezifische Sprachbeispiele sind in nicht-proportionaler Courier-Schrift formatiert:app.documents.add

Bei AppleScript, VBScript und JavaScript gelten mehrere Konventionen. Folgende Abkrzungen werden verwendet:

AS steht fr AppleScript. VBS steht fr VBScript. JS steht fr JavaScript.

Der Begriff Befehle bezieht sich sowohl auf Befehle in AppleScript als auch auf Methoden in VBScript und JavaScript.

6

KAPITEL 1: Einfhrung

Konventionen in diesem Handbuch 7

Wenn in diesem Handbuch bestimmte Eigenschaften und Befehle genannt werden, gelten dabei die Namenskonventionen von AppleScript fr die jeweilige Eigenschaft. Die Entsprechungen in VBScript und JavaScript werden in Klammern angegeben. Beispiel: Die Eigenschaft display dialogs (DisplayDialogs/displayDialogs) ist Teil des Application-Objekts. In diesem Fall ist display dialogs die AppleScript-Eigenschaft, DisplayDialogs die VBScript-Eigenschaft und displayDialogs die JavaScript-Eigenschaft. Bei umfangreicheren Codeblcken werden die Skriptbeispiele in separaten Zeilen angegeben.

ASlayer 1 of layer set 1 of current document

VBSappRef.ActiveDocument.LayerSets(1).Layers(1)

JSapp.activeDocument.layerSets[0].layers[0]

In manchen Fllen werden Wertelisten entsprechend den Skriptsprachen tabellarisch organisiert.

2

Photoshop Grundlagen der SkripterstellungDieses Kapitel bietet einen berblick ber die Erstellung von Skripten fr Photoshop sowie eine Beschreibung der Untersttzung fr die Skriptsprachen AppleScript, VBScript und JavaScript. Auerdem erhalten Sie Informationen ber das Ausfhren von Skripten und ber das Photoshop-Objektmodell. Anhand eines einfachen Beispiels wird demonstriert, wie Sie ein erstes Photoshop-Skript schreiben knnen. Wenn Sie bereits mit Skripten oder Programmiersprachen gearbeitet haben, knnen Sie wahrscheinlich einen Groteil dieses Kapitels berspringen. Sie knnen sich an folgender Liste orientieren, um die fr Sie relevanten Informationen einzugrenzen.

Informationen zum Objektmodell von Photoshop finden Sie unter Photoshop-Objektmodell auf Seite 11. Informationen ber das Auswhlen einer Skriptsprache finden Sie im Handbuch Introduction to Scripting. Beispiele fr Skripten, die speziell fr Photoshop entwickelt wurden, finden Sie in Kapitel3, Skripting in Photoshop auf Seite 21. Ausfhrliche Informationen zu den Objekten und Befehlen in Photoshop finden Sie in den Referenzinformationen der drei Handbcher, die zu dieser Installation gehren: Adobe PhotoshopCS5 AppleScript Scripting Reference, Adobe PhotoshopCS5 Visual Basic Scripting Reference und Adobe PhotoshopCS5 JavaScript Scripting Reference.

HINWEIS: Informationen ber die Objekte und Befehle in Photoshop knnen Sie fr jede der drei Skriptsprachen auerdem ber die Objektkataloge abrufen. Siehe Anzeigen von Objekten, Befehlen und Methoden in Photoshop auf Seite 21.

Skripterstellung im berblickEin Skript ist eine Reihe von Befehlen, mit denen Photoshop angewiesen wird, bestimmte Aktionen auszufhren, etwa verschiedene Filter auf ausgewhlte Elemente im geffneten Dokument anzuwenden. Hierbei kann es sich um einfache Aktionen handeln, die nur ein einzelnes Objekt betreffen, oder um komplexe Operationen, die sich auf viele Objekte in einem Photoshop-Dokument auswirken. Die Aktionen knnen auf Photoshop begrenzt sein oder auch andere Anwendungen aufrufen. Skripten dienen der Automatisierung sich wiederholender Aufgaben und werden oft als kreatives Werkzeug eingesetzt, um Aufgaben zu rationalisieren, deren manuelle Ausfhrung zu zeitaufwendig wre. Sie knnten z.B. ein Skript erstellen, um eine Reihe lokalisierter Versionen eines bestimmten Bildes zu erstellen oder um Informationen ber die verschiedenen Farbprofile einer Sammlung von Bildern zusammenzustellen. Wenn Sie mit der Skripterstellung noch nicht vertraut sind, sollten Sie die grundlegenden Informationen im Handbuch Introduction to Scripting lesen.

Warum Skripten statt Aktionen?Wenn Sie bereits Photoshop-Aktionen verwendet haben, dann sind Ihnen die groen Vorteile der Automatisierung repetitiver Aufgaben bekannt. Mit Skripten knnen Sie diese Vorteile erheblich erweitern, da sich Funktionen einsetzen lassen, die in Photoshop-Aktionen nicht verfgbar sind. Folgende Aufgaben knnen Sie beispielsweise mit Skripten automatisieren, nicht jedoch mit Aktionen:

Sie knnen Bedingungslogik einsetzen, sodass das Skript je nach vorliegender Situation automatisch Entscheidungen trifft. Beispiel: Sie knnen ein Skript erstellen, das je nach Gre eines ausgewhlten Bildbereichs eine andersfarbige Umrandung hinzufgt: Wenn der ausgewhlte Bereich kleiner als 2x4Zoll ist, grne Umrandung hinzufgen; andernfalls rote Umrandung hinzufgen.8

KAPITEL 2: Photoshop Grundlagen der Skripterstellung

Untersttzung der Skripterstellung in Photoshop

9

Sie knnen mit einem einzigen Skript Aktionen ausfhren, an denen mehrere Anwendungen beteiligt sind. Beispielsweise ist es je nach verwendeter Skriptsprache mglich, sowohl Photoshop als auch eine andere Anwendung der Adobe Creative Suite5, z.B. Adobe IllustratorCS5, von demselben Skript aus anzusteuern. Sie knnen Dateien mit Skripten ffnen, speichern und umbenennen. Sie knnen Skripten von einem Computer auf einen anderen kopieren. Wenn Sie eine Aktion verwenden und dann den Computer wechseln, mssen Sie dagegen die Aktion neu erstellen. Skripten sind flexibler beim automatischen ffnen von Dateien. Wenn Sie eine Datei ber eine Aktion ffnen, mssen Sie den Speicherort der Datei hartcodieren. In einem Skript knnen Sie dagegen Variablen fr die Dateipfade verwenden.

HINWEIS: Weitere Informationen zu Photoshop-Aktionen finden Sie in der Online-Hilfe von Photoshop.

Untersttzung der Skripterstellung in PhotoshopPhotoshop untersttzt die Skripterstellung in drei Skriptsprachen: AppleScript, VBScript und JavaScript. AppleScript und JavaScript knnen unter MacOS ausgefhrt werden, JavaScript und VBScript unter Windows. Informationen zum Auswhlen der geeigneten Skriptsprache sowie ergnzende Informationen zum Einsatz dieser Sprachen mit Adobe-Anwendungen finden Sie im Handbuch Introduction to Scripting. Siehe Erstellen und Ausfhren eines AppleScripts auf Seite 18, Erstellen und Ausfhren eines VBScripts auf Seite 19 und Erstellen und Ausfhren eines JavaScripts auf Seite 19. Sie knnen JavaScript-Skripten aus AppleScript- und VBScript-Skripten aufrufen. Siehe Ausfhren von JavaScripts aus AS oder VBS auf Seite 10. Damit eine Datei von Photoshop als gltige Skriptdatei erkannt wird, ist eine korrekte Dateinamenerweiterung erforderlich: Skripttyp AppleScript JavaScript ExtendScript VBScript Visual Basic Dateityp kompilierte SkriptOSAS-Datei Text Text ausfhrbar Erweiterung.scpt (ohne) .js .jsx .vbs .exe

Plattform MacOS MacOS und Windows Windows Windows

JavaScript-UntersttzungEine JavaScript-Datei wird von Photoshop als gltige Skriptdatei erkannt, wenn sie die Erweiterung .js oder .jsx hat. Unter MacOS besteht hinsichtlich der Funktionsweise von Skripten mit den beiden Erweiterungen kein Unterschied. Unter Windows hat die Erweiterung .js dieselbe Wirkung wie die Erweiterung .jsx, wenn die Skriptdateien aus Photoshop heraus geffnet werden. Beim Starten von Skripten per Doppelklick werden Skripten mit der Erweiterung .js jedoch mit der JScript-Engine von Microsoft interpretiert; Photoshop kann auf diese Weise nicht gestartet werden. Unter Windows empfiehlt es sich, die Erweiterung .jsx zu verwenden, da das Skript dann mit der ExtendScript-Engine interpretiert wird.

KAPITEL 2: Photoshop Grundlagen der Skripterstellung

Untersttzung der Skripterstellung in Photoshop

10

In JavaScript geschriebene Skripten knnen ber das Men Skripten von Adobe Photoshop (Datei> Skripten) aufgerufen werden. Sie haben damit schnellen und einfachen Zugriff auf Ihre JavaScripts. Wenn eine JavaScript-Datei im entsprechenden Verzeichnis auf der Festplatte abgelegt wird, kann direkt ber das Photoshop-Men darauf zugegriffen werden. Um ein JavaScript im Men Skripten zu installieren, platzieren Sie es im Ordner Skripten (PhotoshopCS5\Vorgaben\Skripten). Die Namen der Skripten im Ordner Skripten werden ohne die Dateinamenerweiterung im Men Skripten angezeigt. Im Men Skripten kann eine beliebige Anzahl von Skripten installiert werden. Wenn whrend der Ausfhrung von Photoshop Skripten in den Ordner Skripten eingefgt werden, sind diese Skripten erst nach dem nchsten Start der Anwendung im Men Skripten sichtbar. Alle Skripten aus dem Ordner Skripten und aus dessen Unterordnern werden auf der obersten Ebene des Mens Datei> Skripten angezeigt. Wenn Unterordner hinzugefgt werden, entsteht dadurch im Men Skripten keine hierarchische Struktur.

Ausfhren anderer Skriptenber den Befehl Durchsuchen unten im Men Skripten (Datei> Skripten> Durchsuchen) knnen Sie Skripten ausfhren, die nicht im Ordner Skripten installiert sind. Sie knnen mit dem Befehl Durchsuchen auch Skripten auswhlen, die nach dem letzten Start der Anwendung im Ordner Skripten installiert wurden. Wenn Sie auf Durchsuchen klicken, wird ein Dateibrowser-Dialogfeld angezeigt, in dem Sie eine Skriptdatei fr die Ausfhrung auswhlen knnen. Im Dialogfeld Durchsuchen werden nur Dateien mit der Erweiterung .js oder .jsx angezeigt. Wenn Sie eine Skriptdatei auswhlen, erfolgt die Ausfhrung genau wie bei einem installierten Skript.

Start-SkriptenBeim Starten von Photoshop werden alle in den Startordnern gefundenen .jsx-Dateien ausgefhrt.

Unter Windows ist dies der Startordner fr benutzerdefinierte Skripten:C:\Program Files\Common Files\Adobe\Startup Scripts CS5\Adobe Photoshop

Unter MacOS ist dies der Startordner fr benutzerdefinierte Skripten:~/Library/Application Support/Adobe/Startup Scripts CS5/Adobe Photoshop

Wenn sich Ihr Skript in diesem Basisstartordner befindet, wird es auch beim Start von allen anderen Anwendungen der Adobe Creative Suite5 ausgefhrt. Wenn ein solches Skript nur von Photoshop ausgefhrt werden soll, muss es Code wie den folgenden enthalten:if( BridgeTalk.appName == "photoshop" ) { //continue executing script }

Weitere Einzelheiten hierzu finden Sie im Handbuch JavaScript Tools Guide.

Ausfhren von JavaScripts aus AS oder VBSSie knnen JavaScripts aus AppleScript oder VBScript ausfhren und so plattformunabhngige Skripten erstellen. Dabei knnen Sie entweder einzelne JavaScript-Anweisungen oder eine vollstndige JavaScript-Datei ausfhren. Weitere Informationen finden Sie im Handbuch Introduction to Scripting.

KAPITEL 2: Photoshop Grundlagen der Skripterstellung

Photoshop-Objektmodell

11

Photoshop-ObjektmodellEin Dokumentobjektmodell (DOM) ist eine Anwendungsprogrammierschnittstelle (Application Programming Interface, API), die ber eine Skriptsprache Programmierzugriff auf verschiedene Komponenten eines Dokuments (gem Definition fr die jeweilige Anwendung) ermglicht. Weitere Informationen ber Adobe-Objektmodelle und untersttzende Skriptsprachen finden Sie im Handbuch Introduction to Scripting. Das Photoshop-DOM besteht aus einer hierarchischen Darstellung der Photoshop-Anwendung mit den darin verwendeten Dokumenten samt zugehrigen Komponenten. ber das DOM haben Sie programmiertechnischen Zugriff auf das Dokument sowie auf seine Komponenten und knnen Bearbeitungen daran vornehmen. Sie knnen ber das DOM beispielsweise ein neues Dokument erstellen, einem vorhandenen Dokument eine Ebene hinzufgen oder die Hintergrundfarbe einer Ebene ndern. Die meisten Funktionen, die ber die Benutzeroberflche von Photoshop zur Verfgung stehen, sind ber das DOM zugnglich. Adquate Kenntnisse ber das DOM von Photoshop und darber, wie die einzelnen Aspekte des DOM mit der Photoshop-Anwendung und den zugehrigen Dokumenten zusammenhngen, erleichtern das Schreiben von Skripten.

EnthaltenseinshierarchieDas Photoshop-Objektmodell ist eine Enthaltenseinshierarchie, d.h. Objekte im Modell werden teilweise anhand der bergeordneten Objekte identifiziert, in denen sie enthalten sind. In Photoshop steht an der Spitze der Hierarchie das Objekt Application (Anwendung). Anwendungen enthalten eine Sammlung von Dokumenten (Documents). Die Dokumentsammlung enthlt Document-Objekte. Ein Document-Objekt enthlt eine ArtLayers-Sammlung, eine HistoryStates-Sammlung, eine Layers-Sammlung, eine Layersets-Sammlung und eine Channels-Sammlung. ber Befehle bzw. Methoden im DOM knnen Sie in einem Photoshop-Dokument Objekte hinzufgen oder entfernen und einzelne Objekteigenschaften wie Farbe, Gre und Form ndern. Im Diagramm unten steht jeder Knoten in der Hierarchie fr eine Klasse im Photoshop-DOM. Im Photoshop-Objektmodell dienen Elemente (AppleScript) bzw. Sammlungen (VBScript, JavaScript) zum unkomplizierten Gruppieren von Klassen. Objektelemente und Sammlungen sind in der Darstellung des Objektmodells unten nicht aufgefhrt. Nicht alle Klassen sind mit einer Sammlung verknpft. Einige Schlsselklassen sind jedoch nach Elementen bzw. Sammlungen gruppiert. In Photoshop gibt es die folgenden Elemente/Sammlungen: Art Layers, Channels, Color Samplers, Count Items, Documents, Layers, Layer Comps, Layer Sets, History States, Notifiers, Path Items, Path Points Sub Path Items und Text Fonts. Weitere Informationen zu Elementen und Sammlungen finden Sie im Handbuch Introduction to Scripting. HINWEIS: In Photoshop beginnt der Index von VBScript-Sammlungen mit 1 statt mit 0. Er weicht damit von anderen VBScript-Arrays ab, bei denen der Index mit 0 beginnt.

KAPITEL 2: Photoshop Grundlagen der Skripterstellung

Photoshop-Objektmodell

12

.

Enthaltenseinshierarchie von Photoshop (nur Schlsselklassen sind aufgefhrt)

Application

Notifier

Document

Preferences

Selection

Channel

Layer Comp

Count Item

Color Sampler

Measurement Scale

Document Info

History State

Path Item

Art Layer

Layer Set

Sub Path Item Path Point

Text Item (Object)

Layer Set

Art Layer

Application- und Document-KlassenDie Application-Klasse ist der Ausgangspunkt der Photoshop-Objektmodellhierarchie. Skripten knnen nur korrekt ausgefhrt werden, wenn die richtige Zielanwendung festgelegt ist. Siehe Festlegen des Application-Objekts als Ziel und Erstellen von Verweisen auf Seite 22. Die Document-Klasse wird verwendet, um nderungen am Dokumentbild vorzunehmen. Mit dem Document-Objekt knnen Sie die Arbeitsflche freistellen, drehen oder spiegeln, die Gre des Bildes oder der Arbeitsflche anpassen oder das Bild zuschneiden. Sie haben mit dem Document-Objekt auerdem die Mglichkeit, die aktive Ebene abzurufen, dann das aktuelle Dokument zu speichern und innerhalb des aktiven Dokuments oder zwischen verschiedenen Dokumenten zu kopieren und einzufgen. Weitere Informationen zur Verwendung von Document-Objekten finden Sie unter Erstellen neuer Objekte in einem Skript auf Seite 23 und Verwenden des Document-Objekts auf Seite 34.

Layer-KlassenEs gibt in Photoshop zwei Arten von Ebenen: ein Art Layer (Grafikebene) kann Bildinhalte aufnehmen; ein Layer Set (Ebenenset) kann entweder keinerlei Grafikebenen oder aber mehrere Grafikebenen enthalten. Ein Art Layer ist eine Ebenenklasse in einem Dokument. Sie haben damit die Mglichkeit, ein Objekt im Bild ohne Auswirkungen auf andere Objekte zu bearbeiten. Bilder setzen sich normalerweise aus mehreren Ebenen zusammen, die durch ein Layer Set definiert sind. Sie knnen die Bildkomposition verndern, indem Sie Anordnung und Attribute der beteiligten Ebenen ndern. Ein Text Item (Textelement) ist eine bestimmte Art von Grafikebene, die Ihnen das Einfgen von Text in ein Bild ermglicht. In Photoshop wird ein Text Item-Objekt als eine Eigenschaft der Grafikebene implementiert. Weitere Informationen zu Textelementen finden Sie unter Verwenden des Text Item-Objekts auf Seite 41.

KAPITEL 2: Photoshop Grundlagen der Skripterstellung

Photoshop-Objektmodell

13

Ein Layer Set ist eine Klasse, die aus mehreren Ebenen besteht. Das Ebenenset ist vergleichbar mit einem Ordner auf dem Desktop bzw. Schreibtisch. Ordner knnen andere Ordner enthalten; analog dazu sind Ebenensets rekursiv: Ein Ebenenset kann ein anderes Ebenenset in der Objektmodellhierarchie aufrufen. Weitere Informationen zu Ebenen finden Sie unter Arbeiten mit Layer-Objekten auf Seite 36.

Layer Comp-KlasseDie Layer Comp-Klasse ermglicht es Ihnen, mehrere Versionen eines Layouts in einem einzigen Dokument zu erstellen, zu verwalten und anzuzeigen

Channel-KlasseDie Channel-Klasse wird verwendet, um Pixelinformationen ber eine Bildfarbe zu speichern. Je nach Bildfarbe steht eine unterschiedliche Anzahl von Kanlen zur Verfgung. Ein RGB-Bild hat z.B. vier Standardkanle: jeweils einen Kanal fr jede Primrfarbe sowie einen Kanal fr die Bearbeitung des gesamten Bildes. Sie knnen wahlweise etwa den Rot-Kanal aktivieren, um nur die roten Pixel im Bild zu bearbeiten, Sie knnen aber auch alle Kanle gleichzeitig einer Bearbeitung unterziehen. Derartige Kanle sind mit dem Dokumentmodus verwandt und werden als Komponentenkanle bezeichnet. Sie haben in Photoshop die Mglichkeit, ber die Komponentenkanle hinaus weitere Kanle zu erstellen. Sie knnen einen Volltonfarbenkanal, einen Kanal fr einen maskierten Bereich und einen Kanal fr einen ausgewhlten Bereich erstellen. Mit den Befehlen bzw. Methoden eines Channel-Objekts knnen Sie Kanle erstellen, lschen und duplizieren. Sie haben auerdem die Mglichkeit, das Histogramm eines Kanals abzurufen, den Kanaltyp zu wechseln oder die aktuelle Kanalauswahl zu ndern. Weitere Informationen zu Kanlen finden Sie unter Arbeiten mit Channel-Objekten auf Seite 46.

Selection-KlasseDie Selection-Klasse dient zum Festlegen eines zu bearbeitenden Pixelbereichs im aktiven Dokument (oder auf einer ausgewhlten Ebene des aktiven Dokuments). Weitere Informationen zu Auswahlen finden Sie unter Arbeiten mit Selection-Objekten auf Seite 42.

History State-KlasseDie History State-Klasse ist ein Palettenobjekt, mit dem die an einem Dokument vorgenommenen nderungen verfolgt werden. Jedes Mal, wenn Sie ein Bild ndern, wird der neue Zustand des Bildes als Protokollobjekt zur Palette hinzugefgt. Die verschiedenen Bildzustnde lassen sich per Document-Objekt abrufen und knnen zum Zurcksetzen des Dokuments in einen frheren Zustand verwendet werden. Ein Protokollobjekt kann auerdem zum Fllen einer Auswahl verwendet werden. Weitere Informationen zu Protokollobjekten finden Sie unter Verwenden von HistoryState-Objekten auf Seite 47. HINWEIS: Wenn Sie in AppleScript ein Dokument erstellen und dann unmittelbar danach versuchen, den Zustand abzurufen, gibt Photoshop einen Fehler zurck. Sie mssen zunchst Photoshop aktivieren, also zur Anwendung im Vordergrund machen, bevor Sie auf Protokollobjekte zugreifen knnen.

Document Info-KlasseDie Document Info-Klasse speichert Metadaten ber ein Dokument. Metadaten sind alle Daten, mit denen Inhalte oder Eigenschaften einer Datei beschrieben werden knnen. Weitere Informationen zu Dokumentinformationen finden Sie unter Verwenden des DocumentInfo-Objekts auf Seite 47.

KAPITEL 2: Photoshop Grundlagen der Skripterstellung

Photoshop-Objektmodell

14

Path Item-, Sub Path Item- und Path Point-KlasseDie Path Item-Klasse enthlt Informationen ber ein Zeichnungsobjekt, z.B. die Kontur einer Form oder eine Kurve. Die in der Path Item-Klasse enthaltene Sub Path Item-Klasse stellt die eigentliche Geometrie der Form dar. Die Path Point-Klasse enthlt Informationen ber jeden Punkt in einem Unterpfad. Siehe Verwenden des PathItem-Objekts auf Seite 49.

Preferences-KlasseDie Preferences-Klasse ermglicht es Ihnen, Benutzervoreinstellungen abzurufen und festzulegen. Siehe Arbeiten mit Voreinstellungen fr Dokumente auf Seite 61.

Notifier-KlasseDas Notifier-Objekt verknpft ein Ereignis mit einem Skript. Wenn Photoshop z.B. beim Starten der Anwendung automatisch ein neues Dokument erstellen soll, knnen Sie ein Skript verknpfen, das fr ein Open Application-Ereignis ein Document-Objekt erstellt. Weitere Informationen zu Notifiern finden Sie unter Verwenden von Notifier-Objekten auf Seite 48.

Count Item-KlasseDas Count Item-Objekt untersttzt die Skripterstellung fr das Zhlungswerkzeug.

Color Sampler-KlasseDas Color Sampler-Objekt untersttzt die Skripterstellung fr das Farbaufnahme-Werkzeug.

Measurement Scale-KlasseDas Measurement Scale-Objekt untersttzt die Skripterstellung fr die neue Messskala-Funktion, mit der Sie eine Skala fr Ihr Dokument festlegen knnen.

Die Enthaltenseinshierarchie und die Photoshop-BenutzeroberflcheIn der folgenden Tabelle wird beschrieben, in welcher Beziehung die einzelnen Objekte zur Benutzeroberflche von Photoshop stehen. Objekt Application Document Beschreibung Die Photoshop-Anwendung. Das Arbeitsobjekt, in dem Sie Ebenen, Kanle, Aktionen usw. erstellen. In einem Skript benennen, ffnen und speichern Sie ein Dokument genauso, wie Sie dies mit einer Datei in der Anwendung tun. Der ausgewhlte Bereich einer Ebene oder eines Dokuments. So erstellen Sie das Objekt ohne Skript Starten Sie die Photoshop-Anwendung. Whlen Sie in Photoshop Datei> Neu oder Datei> ffnen.

Selection

Whlen Sie das Auswahlrechteck oder das Lasso und ziehen Sie mit der Maus.

KAPITEL 2: Photoshop Grundlagen der Skripterstellung

Photoshop-Objektmodell

15

Objekt Path Item

Beschreibung Ein Zeichnungsobjekt, z.B. die Kontur einer Form, eine gerade Linie oder eine Kurve. Pixelinformationen ber eine Bildfarbe.

So erstellen Sie das Objekt ohne Skript Whlen Sie das Pfadauswahl-Werkzeug oder den Zeichenstift und ziehen Sie einen Pfad mit der Maus. Whlen Sie Fenster> Kanle.

Channel Art Layer

Eine Ebenenklasse in einem Dokument, die es Whlen Sie Ebene> Neu> Ebene oder Ihnen ermglicht, ein Element im Bild ohne Fenster> Ebenen. Auswirkungen auf andere Elemente zu bearbeiten. Eine Gruppe von Art Layer-Objekten. Gruppe ist der aktuelle Name in der Photoshop-Benutzeroberflche. Ebenenset war der in einer frheren Version verwendete Name. Der Objektname bleibt zur Erhaltung der Rckwrtskompatibilitt gleich. Ein Schnappschuss des Ebenenstatus in einem Dokument. Whlen Sie Ebene> Neu> Gruppe.

Layer Set

Layer Comp

Whlen Sie Fenster> Ebenenkomp. Klicken Sie dann auf das Symbol zum Erstellen einer neuen Ebenenkomposition. Whlen Sie Datei> Dateiinformationen.

Document Info

Metadaten ber ein Document-Objekt. HINWEIS: Metadaten sind alle Daten, mit denen Inhalte oder Eigenschaften einer Datei beschrieben werden knnen, z.B. Dateiname, Erstellungsdatum, Name des Autors, Name des in der Datei gespeicherten Bildes usw. Benachrichtigt ein Skript, wenn ein Ereignis auftritt. Das Ereignis lst dann die Ausfhrung des Skripts aus. Beispiel: Wenn ein Anwender auf die Schaltflche OK klickt, teilt das notifier-Objekt dem Skript mit, welche Operation folgen soll. Dies sind die Anwendungsvoreinstellungen.

Notifier

Whlen Sie Datei> Skripten> Skriptereignis-Manager.

Preferences

Whlen Sie unter Windows Bearbeiten> Voreinstellungen bzw. unter MacOS Photoshop> Voreinstellungen.

History State

Whlen Sie Fenster> Protokoll und Speichert eine Version des Dokuments in dem Status, in dem es jeweils beim Speichern vorlag. whlen Sie anschlieend einen Status aus der Protokollpalette. HINWEIS: Sie knnen mit dem History State-Objekt ein Selection-Objekt fllen oder ein Dokument auf einen frheren Status zurcksetzen. Whlen Sie das Farbaufnahme-Werkzeug aus und klicken Sie in das Dokument. Whlen Sie das Zhlungswerkzeug aus und klicken Sie in das Dokument. Das Measurement Scale-Objekt kann nicht erstellt werden, ber Analyse> Messskala> Benutzerdefiniert haben Sie jedoch die Mglichkeit, die zugehrigen Eigenschaften zu ndern.

Color Sampler Stellt einen Farbaufnehmer in Ihrem Dokument dar. Count Item Stellt ein gezhltes Element im Dokument dar.

Measurement Stellt die Messskala fr Ihr Dokument dar. Scale

KAPITEL 2: Photoshop Grundlagen der Skripterstellung

Photoshop-Objektmodell

16

Weitere ObjekteDas Photoshop-Objektmodell enthlt ber die oben im Abschnitt zur Enthaltenseinshierarchie beschriebenen Objekte hinaus weitere Objekte. Die meisten dieser Klassen werden als Typen fr Eigenschaften oder zum Bereitstellen von Informationen (als Argumente) fr Befehle bzw. Methoden verwendet. Beispiel:

Die Klasse color value (SolidColor/SolidColor) gibt den Typ fr die Eigenschaften background color (backgroundColor/backgroundColor) und foreground color (ForegroundColor/foregroundColor) des Application-Objekts an. Siehe Arbeiten mit Color-Objekten auf Seite 51. Optionen zum ffnen und Speichern von Dokumenten werden als Klassen definiert. Diese Klassen werden an die Befehle bergeben, die Dokumente ffnen und speichern. Die Klasse BMP save options (BMPSaveOptions/BMPSaveOptions) kann beispielsweise als Argument an den Befehl bzw. die Methode save (saveAs/saveAs) bergeben werden. Siehe ffnen eines Dokuments auf Seite 28 und Speichern eines Dokuments auf Seite 31.

KonstantenEine weitere wichtige Komponente des Photoshop-Objektmodells fr JavaScript und VBScript sind Konstanten. Konstanten sind ein Wertetyp zur Definition einer Eigenschaft. Beispielsweise knnen mit der Eigenschaft kind eines Art Layer-Objekts nur bestimmte, in Photoshop zulssige Typen verwendet werden. Allgemeine Informationen zu Konstanten finden Sie im Handbuch Introduction to Scripting. HINWEIS: In dieser Dokumentation werden die eigentlichen Werte der numerischen Konstanten fr VBScript wie folgt verdeutlicht:newLayerRef.Kind = 2 '2 indicates psLayerKind --> 2 (psTextLayer)

Durch den Apostroph (') vor der Erluterung wird ein Kommentar erstellt. Der auf den Apostroph folgende Text wird von der Skript-Engine ignoriert. Weitere Informationen zur Verwendung von Kommentaren finden Sie in dem Handbuch Introduction to Scripting. Lesen Sie beispielsweise die Informationen zum ArtLayer-Objekt im Handbuch Adobe PhotoshopCS5 JavaScript Scripting Reference oder Adobe PhotoshopCS5 Visual Basic Scripting Reference nach. Eine der Eigenschaften dieses Objekts ist Kind (kind). Der Datentyp fr diese Eigenschaft enthlt einen Link zu der Konstante, ber die mgliche Werte fr die Eigenschaft definiert werden. In VBScript handelt es sich um die Konstante PSLayerKind, in JavaScript um die Konstante LayerKind. Klicken Sie auf den Link, um die mglichen Werte fr die Eigenschaft kind anzuzeigen. HINWEIS: Verschiedene Objekte knnen denselben Eigenschaftsnamen mit unterschiedlichen Konstantenwerten verwenden. Die Konstantenwerte fr die Eigenschaft kind des Channel-Objekts unterscheiden sich beispielsweise von den Konstantenwerten fr die Eigenschaft kind des Art Layer-Objekts.

KAPITEL 2: Photoshop Grundlagen der Skripterstellung

Erstellen eines Beispielskripts Hello World

17

Erstellen eines Beispielskripts Hello WorldIn diesem Abschnitt wird in jeder der drei Skriptsprachen fr Photoshop ein sehr einfaches Skript vorgestellt. Die erste Aufgabe in allen Programmiersprachen besteht traditionell im Anzeigen der Meldung Hello World. Unser Hello World-Skript fhrt folgende Schritte aus: 1. Starten der Photoshop-Anwendung. 2. Erstellen eines neuen Document-Objekts Beim Erstellen des Dokuments wird die Variable docRef erstellt, anschlieend wird docRef ein Verweis auf das Dokument als Wert zugewiesen. Das Dokument soll eine Breite von 4Zoll und eine Hhe von 2Zoll haben. 3. Erstellen eines Art Layer-Objekts Im Skript wird die Variable artLayerRef erstellt, anschlieend wird artLayerRef ein Verweis auf das Art Layer-Objekt als Wert zugewiesen. 4. Definieren der Variablen artLayerRef als Textelement 5. Festlegen des Textelementinhalts auf Hello World HINWEIS: Auerdem werden Kommentare in das Skript eingefgt. Da dies das erste Skript ist, wird die Kommentarfunktion sehr hufig eingesetzt. Diese Schritte spiegeln einen bestimmten Pfad durch die Enthaltenseinshierarchie wider, wie im Folgenden veranschaulicht:

Application

Document

Art Layer

Text Item

KAPITEL 2: Photoshop Grundlagen der Skripterstellung

Erstellen eines Beispielskripts Hello World

18

Erstellen und Ausfhren eines AppleScriptsFr diese Aufgabe mssen Sie zunchst den Skripteditor von Apple ffnen. HINWEIS: Der Standardpfad fr den Skripteditor lautet Programme> AppleScript> Skripteditor. So erstellen Sie Ihr erstes AppleScript fr Photoshop und fhren es aus: 1. Geben Sie folgendes Skript im Skripteditor ein: HINWEIS: Die Zeilen, die mit -- beginnen, sind Kommentare. Die Eingabe von Kommentaren ist optional.-- Sample script to create a new text item and -- change its contents. --target Photoshop CS5 tell application "Adobe Photoshop CS5" -- Create a new document and art layer. set docRef to make new document with properties {width:4 as inches, height:2 as inches} set artLayerRef to make new art layer in docRef -- Change the art layer to be a text layer. set kind of artLayerRef to text layer -- Get a reference to the text object and set its contents. set contents of text object of artLayerRef to "Hello, World" end tell

2. Klicken Sie auf Ausfhren, um das Skript auszufhren. Photoshop erstellt ein neues Dokument, fgt eine neue Ebene hinzu, ndert den Ebenentyp in eine Textebene und setzt den Text auf Hello, World. HINWEIS: Sollten Fehler gemeldet werden, lesen Sie im Handbuch Introduction to Scripting den Abschnitt zum Debuggen von AppleScript.

KAPITEL 2: Photoshop Grundlagen der Skripterstellung

Erstellen eines Beispielskripts Hello World

19

Erstellen und Ausfhren eines VBScriptsIm Folgenden sind die Schritte zum Erstellen und Ausfhren eines VBScripts angegeben, das den Text Hello, World! in einem Photoshop-Dokument anzeigt. So erstellen Sie Ihr erstes VBScript fr Photoshop und fhren es aus: 1. Geben Sie folgendes Skript in einen Skript- oder Texteditor ein. HINWEIS: Die Eingabe von Kommentaren ist optional.Dim appRef Set appRef = CreateObject( "Photoshop.Application" ) ' Remember current unit settings and then set units to ' the value expected by this script Dim originalRulerUnits originalRulerUnits = appRef.Preferences.RulerUnits appRef.Preferences.RulerUnits = 2 ' Create a new 2x4 inch document and assign it to a variable. Dim docRef Dim artLayerRef Dim textItemRef Set docRef = appRef.Documents.Add(2, 4) ' Create a new art layer containing text Set artLayerRef = docRef.ArtLayers.Add artLayerRef.Kind = 2 ' Set the contents of the text layer. Set textItemRef = artLayerRef.TextItem textItemRef.Contents = "Hello, World!" ' Restore unit setting appRef.Preferences.RulerUnits = originalRulerUnits

2. Speichern Sie die Datei als Textdatei mit der Erweiterung .vbs. 3. Doppelklicken Sie im Windows-Explorer auf die Datei, um das Skript auszufhren. Das Skript ffnet Photoshop.

Erstellen und Ausfhren eines JavaScriptsIm Folgenden sind die Schritte zum Erstellen und Ausfhren eines JavaScripts angegeben, das den Text Hello, World! in einem Photoshop-Dokument anzeigt. Da Sie Ihre JavaScripts direkt in Photoshop ausfhren, mssen Sie zu Beginn des Skripts keinen Code einfgen, mit dem Photoshop geffnet wird. HINWEIS: Adobe hat die Skriptsprache Extend Script entwickelt, die JavaScript fr die Verwendung mit Photoshop ergnzt. Sie knnen den Extend Script-Befehl #target verwenden, um die Photoshop-Anwendung aufzurufen. So knnen Sie JavaScripts ausfhren, die von beliebiger Stelle aus auf Photoshop zugreifen knnen. Weitere Informationen finden Sie im Handbuch JavaScript Tools Guide im Kapitel Script UI.

KAPITEL 2: Photoshop Grundlagen der Skripterstellung

Erstellen eines Beispielskripts Hello World

20

So erstellen Sie Ihr erstes JavaScript fr Photoshop und fhren es aus: 1. Geben Sie das folgende Skript ein. HINWEIS: Die Eingabe von Kommentaren ist optional.// Hello Word Script // Remember current unit settings and then set units to // the value expected by this script var originalUnit = preferences.rulerUnits preferences.rulerUnits = Units.INCHES // Create a new 2x4 inch document and assign it to a variable var docRef = app.documents.add( 2, 4 ) // Create a new art layer containing text var artLayerRef = docRef.artLayers.add() artLayerRef.kind = LayerKind.TEXT // Set the contents of the text layer. var textItemRef = artLayerRef.textItem textItemRef.contents = "Hello, World" // Release references docRef = null artLayerRef = null textItemRef = null // Restore original ruler unit setting app.preferences.rulerUnits = originalUnit

2. Speichern Sie die Datei als Textdatei mit der Erweiterung .jsx im Ordner Vorgaben\Skripten Ihres Installationsverzeichnisses von Adobe PhotoshopCS5. HINWEIS: Nur JavaScripts, die sich im Ordner Vorgaben\Skripten befinden, knnen Sie in Photoshop ber Datei> Skripten aufrufen. Die Skripten werden erst nach dem nchsten Start der Anwendung im Men Datei> Skripten angezeigt. HINWEIS: Photoshop untersttzt auch JavaScript-Dateien mit der Erweiterung .js. 3. Fhren Sie einen der folgenden Schritte aus:

Wenn Photoshop bereits geffnet ist, whlen Sie Datei> Skripten> Durchsuchen, navigieren Sie zum Ordner Vorgaben> Skripten und whlen Sie Ihr Skript aus. Starten Sie Photoshop, whlen Sie Datei> Skripten und whlen Sie Ihr Skript aus dem Men Skripten.

3

Skripting in PhotoshopIn diesem Kapitel werden verschiedene Techniken fr die Verwendung des Photoshop Document Object Models (DOM) zur Programmierung Photoshop-spezifischer Skripten demonstriert. Darber hinaus erfahren Sie, wie Sie mithilfe der Referenzhandbcher und Objektmodellbrowser Informationen ber die Objekte, Klassen, Eigenschaften, Befehle und sogar einige Werte (Konstanten oder numerische Werte) finden, die Sie bei der Erstellung von AppleScripts, VBScripts und JavaScripts fr Photoshop verwenden knnen. TIPP: Im gesamten Kapitel folgen auf die Erluterungen zur Erstellung eines Skripts Anweisungen dazu, wo Sie Informationen ber die im Skript verwendeten Elemente finden knnen. Auf diese Weise werden Sie schnell mit der Erstellung von Skripten in Photoshop vertraut sein.

Anzeigen von Objekten, Befehlen und Methoden in PhotoshopReferenzmaterial zu Photoshop fr jede der drei Skriptsprachen befindet sich in den Referenzhandbchern, die zusammen mit dem Programm installiert wurden:

Adobe PhotoshopCS5 AppleScript Scripting Reference Adobe PhotoshopCS5 Visual Basic Scripting Reference Adobe PhotoshopCS5 JavaScript Scripting Reference

Darber hinaus knnen Sie ber den jeweiligen Objektmodellbrowser fr jede Sprache auf Referenzmaterial zugreifen:

Verwenden Sie fr AppleScript den AppleScript-Skripteditor, um das Photoshop-AppleScript-Wrterbuch anzuzeigen. Verwenden Sie fr VBScript den VBA-Editor in Microsoft Word, den Visual Basic-Objektkatalog in Visual Basic oder Visual Studio. Verwenden Sie fr JavaScript den ExtendScript Object Model Viewer. Weitere Informationen finden Sie im Handbuch JavaScript Tools Guide.

Anzeigen des AppleScript-Wrterbuchs von PhotoshopVerwenden Sie den Apple Skripteditor zum Anzeigen des Wrterbuchs. HINWEIS: Der Standardpfad fr den Skripteditor lautet Programme> AppleScript> Skripteditor. So zeigen Sie das AppleScript-Wrterbuch an: 1. Whlen Sie im Skripteditor Ablage> Verzeichnis ffnen. Im Skripteditor wird das Dialogfenster Verzeichnis ffnen angezeigt. 2. Whlen Sie Adobe PhotoshopCS5 und klicken Sie anschlieend auf ffnen. Photoshop wird im Skripteditor geffnet. Anschlieend wird das Photoshop-Wrterbuch angezeigt, in dem Objekte sowie die ihnen zugeordneten Befehle, Eigenschaften und Elemente aufgefhrt sind. Das Wrterbuch enthlt auch die Parameter fr die einzelnen Befehle.

21

KAPITEL 3: Skripting in Photoshop

Festlegen des Application-Objekts als Ziel und Erstellen von Verweisen 22

HINWEIS: Das Photoshop-AppleScript-Wrterbuch enthlt keine vollstndige Liste der Open- und Save-Formate.

Anzeigen der Photoshop Type Library (VBS)Sie knnen den VBA-Editor in Microsoft Word zur Anzeige von Objekten und Befehlen verwenden, die in Photoshop fr VBScript zur Verfgung stehen. So zeigen Sie die VBS-Objektbibliothek in Microsoft Word an: 1. Starten Sie Word und whlen Sie Extras> Makro> Visual Basic-Editor. 2. Whlen Sie Extras> Verweise, aktivieren Sie das Kontrollkstchen Adobe Photoshop Type Library und klicken Sie aufOK. 3. Whlen Sie Ansicht> Objektkatalog. 4. Whlen Sie aus der Liste der geffneten Bibliotheken in der linken oberen Dropdown-Liste die Option PhotoshopCS5 type library. 5. Whlen Sie eine Objektklasse aus, fr die Sie weitere Informationen anzeigen mchten. Zur Anzeige der in Photoshop fr VBScript verfgbaren Objekte und Befehle knnen Sie auch den Objektkatalog in der Visual Basic-Entwicklungsumgebung verwenden. So zeigen Sie die VBS-Objektbibliothek in der Visual Basic-Entwicklungsumgebung an: 1. Starten Sie Visual Studio 2005 oder Visual Basic. 2. Whlen Sie Ansicht> Objektbrowser/Objektkatalog aus. 3. Whlen Sie aus der Dropdown-Liste Durchsuchen die Option Benutzerdefinierten Komponentensatz bearbeiten aus. 4. Suchen Sie auf der Registerkarte COM den Eintrag Adobe PhotoshopCS5 Object Library. Whlen Sie ihn aus. 5. Klicken Sie auf Hinzufgen. Die ausgewhlte Bibliothek wird im Bereich Ausgewhlte Projekte und Komponenten des Fensters angezeigt. 6. Klicken Sie auf OK. 7. Die Photoshop-Bibliothek ist jetzt im Objektbrowser geladen. Klicken Sie auf das Pluszeichen neben dem Photoshop-Bibliotheksymbol. 8. Klicken Sie auf das Pluszeichen neben dem Photoshop-Objektsymbol. 9. Die in der Photoshop-Bibliothek definierten Objekte werden aufgelistet. Sie knnen ein Objekt auswhlen, um weitere Informationen ber die Klasse anzuzeigen.

Festlegen des Application-Objekts als Ziel und Erstellen von VerweisenDa Sie Ihre AppleScripts und VBScripts auerhalb von Photoshop starten, sollte in Ihrem Skript als Erstes festgelegt sein, dass die Befehle in Photoshop ausgefhrt werden sollen. HINWEIS: In JavaScript mssen Sie das Application-Objekt nicht festlegen, da Sie die Skripten direkt aus Photoshop ffnen. (Siehe Erstellen und Ausfhren eines JavaScripts auf Seite 19.)

KAPITEL 3: Skripting in Photoshop

Erstellen neuer Objekte in einem Skript 23

AS

Um Photoshop in AppleScript als Ziel festzulegen, mssen Sie das Skript mit den folgenden Anweisungen beginnen bzw. beenden:tell application "Adobe Photoshop CS5" ... end tell

HINWEIS: Da Sie alle Befehle in den tell-Block einschlieen, mssen Sie im Skript nicht auf das Application-Objekt verweisen. VBS Gehen Sie in VBScript folgendermaen vor, um die Anwendung als Ziel festzulegen:Dim appRef Set appRef = CreateObject("Photoshop.Application")

JS

Da Sie in JavaScript keine Verweise auf ein Application-Objekt bentigen, knnen Sie ohne jede Qualifizierung auf alle Eigenschaften und Methoden der Anwendung zugreifen. Sie knnen ggf. in der Enthaltenseinshierarchie auf die Anwendung verweisen, wenn Ihre Skripten dadurch fr Sie besser lesbar sind. Verwenden Sie zum Verweisen auf das Application-Objekt nicht den Klassennamen, sondern das bereits definierte globale Objekt app. Die folgenden Anweisungen sind gleichbedeutend:var docRef = app.documents[1]

undvar docRef=documents[1]

HINWEIS: In diesem Handbuch wird in vielen JavaScript-Beispielen grundstzlich nicht auf ein Application-Objekt verwiesen.

Erstellen neuer Objekte in einem SkriptWenn Sie in Photoshop ein neues Dokument erstellen mchten, whlen Sie Datei> Neu. Wenn Sie in einem Dokument andere Objekttypen erstellen mchten, wie Ebenen, Kanle oder Pfade, verwenden Sie das Men Fenster oder klicken Sie in der entsprechenden Palette auf das Symbol Neu. In diesem Abschnitt wird gezeigt, wie Sie diese Aufgaben in einem Skript ausfhren knnen. Zum Erstellen eines Objekts in einem Skript benennen Sie den Objekttyp, den Sie erstellen mchten, und verwenden anschlieend den folgenden Befehl:

AS: VBS: JS:

make Add add()

Wie Sie unter Photoshop-Objektmodell auf Seite 11 sehen knnen, enthlt das Document-Objekt bis auf die Application-, Notifier- und Preferences-Objekte alle Objekte. Aus diesem Grund mssen Sie auf das Document-Objekt verweisen, wenn Sie Ihrem Skript ein anderes Objekt als ein Document- oder ein Notifier-Objekt hinzufgen. (Es ist nicht mglich, ein neues Preferences-Objekt hinzuzufgen.) HINWEIS: In VBScript und JavaScript verwenden Sie zur Benennung des Objekttyps den Namen der Objektsammlung. So fgen Sie z.B. ein Dokument der Documents-Sammlung hinzu und eine Grafikebene der art layers-Sammlung. Weitere Informationen zu Elementen und Sammlungen finden Sie im Handbuch Introduction to Scripting.

KAPITEL 3: Skripting in Photoshop

Erstellen neuer Objekte in einem Skript 24

AS

Mit der folgenden Anweisung erzeugen Sie ein Document-Objekt in einem AppleScript.make new document

Sie knnen auch mithilfe des Befehls set eine Variable erstellen und so auf ein neues Dokument verweisen. Im folgenden Beispiel stellt die Variable docRef einen Verweis auf das neue Dokument dar:set docRef to make new document

Wenn Sie ein anderes Objekt als ein Dokument erstellen mchten, mssen Sie auf das Document-Objekt verweisen, das das Objekt enthlt. Im folgenden Beispiel wird in dem durch die Variable docRef angegebenen Dokument eine Grafikebene erstellt.make new art layer in docRef

HINWEIS: Wenn Sie ein Objekt in AppleScript erstellen, fgen Sie das Objekt tatschlich auf dieselbe Weise einem Element hinzu, wie Sie einer Sammlung ein VBScript- oder JavaScript-Objekt hinzufgen. In AppleScript ist der Elementname jedoch in der make- oder set-Anweisung impliziert. So bedeutet z.B. die Anweisungmake new document

tatschlich Folgendes:make new document in the documents element

Fhren Sie die folgenden Schritte aus, um mehr ber das Erstellen von Objekten in einem AppleScript zu erfahren:

Schlagen Sie die make- und set-Befehle im Handbuch Adobe PhotoshopCS5 AppleScript Scripting Reference oder im Photoshop-AppleScript-Wrterbuch nach. Siehe Anzeigen des AppleScript-Wrterbuchs von Photoshop auf Seite 21. Um herauszufinden, welche Befehle fr ein Objekt verwendet werden knnen, schlagen Sie im Handbuch Adobe PhotoshopCS5 AppleScript Scripting Reference das jeweilige Objekt nach. Sind fr ein Objekt gltige Befehle verfgbar, befindet sich am Ende der Objektbeschreibung eine Liste dieser Befehle.

VBS

In VBScript knnen Sie die Add-Methode nur mit dem Namen der Sammlung verwenden. Die Add-Methode ist ausschlielich fr Sammlungsobjekte gltig. Darber hinaus mssen Sie in VBScript einen Verweis auf das Application-Objekt erstellen, wenn Sie in Ihrem Skript ein Objekt erstellen oder auf ein Objekt verweisen. Wenn Sie z.B. in einem VBScript ein Dokument erstellen, knnen Sie nicht den Objektnamen verwenden, wie dies im folgenden Beispiel der Fall ist, in dem ein Document-Objekt erstellt wird:appRef.Document.Add()

Sie mssen den Namen der Sammlung verwenden, bei dem es sich um eine Pluralform des Objektnamens handelt, wie im folgenden Beispiel gezeigt:appRef.Documents.Add()

HINWEIS: In dieser Beispielanweisung wird mithilfe der Variablen appRef auf das Application-Objekt verwiesen. Weitere Informationen finden Sie unter Festlegen des Application-Objekts als Ziel und Erstellen von Verweisen auf Seite 22. Zum Hinzufgen eines ArtLayer-Objekts mssen Sie einen Verweis sowohl auf das Application- als auch auf das Document-Objekt erstellen, in denen die Grafikebene enthalten sein soll. Im folgenden Beispiel wird mit der Variablen appRef auf das Application-Objekt verwiesen. Der Verweis auf das Document-Objekt erfolgt nicht mit dem Namen des Dokuments, sondern mit dem Dokumentindex.appRef.Documents(1).ArtLayers.Add()

HINWEIS: In Photoshop beginnt der Index von VBScript-Sammlungen mit 1 statt mit 0. Das erste erstellte Dokument erhlt also nicht den Index0, sondern den Index1.

KAPITEL 3: Skripting in Photoshop

Festlegen des aktiven Objekts 25

Wenn Sie das Document-Objekt in der Adobe PhotoshopCS5 Visual Basic Scripting Reference oder im Visual Basic-Objektkatalog nachschlagen, werden Sie feststellen, dass es fr das Objekt keine Add()-Methode gibt. Die Add()-Methode steht jedoch fr das Documents-Objekt zur Verfgung. Entsprechend verfgt das ArtLayer-Objekt nicht ber eine Add()-Methode, das ArtLayers-Objekt jedoch schon. HINWEIS: Das Layers-Objekt bildet hier eine Ausnahme. Es handelt sich dabei zwar um ein Sammlungsobjekt, es enthlt jedoch keine Add()-Methode. Die Layers-Sammlung enthlt sowohl ArtLayer- als auch LayerSet-Objekte, die mit der Add-Methode in der ArtLayers- bzw. der LayerSets-Sammlung erzeugt werden. Weitere Informationen finden Sie, wenn Sie das Layers-Objekt in der Adobe PhotoshopCS5 Visual Basic Scripting Reference nachschlagen. JS In JavaScript knnen Sie die add()-Methode nur mit dem Namen der Sammlung verwenden. Die add()-Methode ist ausschlielich fr Sammlungsobjekte gltig. Analog zu VBScript verwenden Sie in JavaScript folgende Anweisung, um ein Dokument zu erstellen:documents.add()

also nicht:document.add()

HINWEIS: Bei Bedarf knnen Sie einen Verweis auf ein Application-Objekt einschlieen. Die folgende Anweisung entspricht dem vorhergehenden Beispiel:app.documents.add()

Zum Hinzufgen eines ArtLayer-Objekts mssen Sie einen Verweis auf das Document-Objekt erstellen, das die Ebene enthlt, und die add()-Methode fr die ArtLayers-Sammlung verwenden (ber die artLayers-Eigenschaft von Document).documents[0].artLayers.add()

Wie bei VBScript ist die add()-Methode zwar mit dem Documents-Objekt von JavaScript, aber nicht mit dem Document-Objekt verbunden. Entsprechend verfgt das ArtLayer-Objekt nicht ber eine add()-Methode, das ArtLayers-Objekt jedoch schon. HINWEIS: Das Layers-Sammlungsobjekt enthlt keine add()-Methode. Weitere Informationen finden Sie, wenn Sie das Layers-Objekt in der Adobe PhotoshopCS5 JavaScript Scripting Reference nachschlagen.

Festlegen des aktiven ObjektsZum Bearbeiten eines Objekts in Photoshop mssen Sie das Objekt in den Vordergrund holen bzw. zum aktiven Objekt machen. Wenn Sie z.B. in einer Ebene arbeiten mchten, mssen Sie die Ebene zunchst in den Vordergrund holen. Bei Skripten gilt dieselbe Regel. Wenn Sie mit Ihrem Skript zwei oder mehr Dokumente erstellen, werden die Befehle und Methoden im Skript auf das aktive Dokument angewendet. Sie sollten deshalb sicherstellen, dass die Befehle auf das richtige Dokument angewendet werden, indem Sie beim Programmieren das aktive Dokument benennen, bevor Sie im Skript Befehle oder Methoden ausfhren. Zum Festlegen eines aktiven Objekts fhren Sie die folgenden Schritte aus:

In AppleScript verwenden Sie die Eigenschaft current des bergeordneten Objekts. In VBScript verwenden Sie die Eigenschaft ActiveObject des bergeordneten Objekts (z.B. ActiveDocument oder ActiveLayer). In JavaScript verwenden Sie die Eigenschaft activeObject des bergeordneten Objekts (z.B. activeDocument oder activeLayer).

KAPITEL 3: Skripting in Photoshop

Festlegen des aktiven Objekts 26

HINWEIS: Beim bergeordneten Objekt handelt es sich um das Objekt, das das angegebene Objekt enthlt. So ist z.B. die Anwendung dem Dokument bergeordnet, und das Dokument ist einer Ebene, einer Auswahl oder einem Kanal bergeordnet. Wenn Sie sich z.B. das Application-Objekt in der Adobe PhotoshopCS5 JavaScript Scripting Reference oder im ExtendScript Object Model Viewer ansehen, werden Sie feststellen, dass activeDocument eine seiner Eigenschaften ist; wenn Sie sich das Document-Objekt ansehen, werden Sie als Eigenschaften activeLayer und activeHistoryState entdecken. Wenn Sie sich analog hierzu application im Handbuch Adobe PhotoshopCS5 AppleScript Scripting Reference oder im Photoshop-AppleScript-Wrterbuch ansehen, werden Sie feststellen, dass dieses Objekt die Eigenschaft current hat usw. Beispielskripten fr das Festlegen aktiver Objekte finden Sie in den folgenden Abschnitten.

Festlegen des aktiven Dokuments auf Seite 26 Festlegen der aktiven Ebene auf Seite 27 Festlegen der aktiven Kanle auf Seite 28

Festlegen des aktiven DokumentsDie folgenden Beispiele zeigen, wie Sie das aktive Dokument festlegen knnen. AS--create 2 documents set docRef to make new document with properties {width:4 as inches, height:4 as inches} set otherDocRef to make new document with properties {width:4 as inches, height:6 as inches} --make docRef the active document set current document to docRef --here you would include command statements --that perform actions on the active document. Then, you could --make a different document the active document --use the current document property of the application class to --bring otherDocRef front-most as the new active document set current document to otherDocRef

VBS

'Create 2 documents Set docRef = app.Documents.Add ( 4, 4) Set otherDocRef = app.Documents.Add (4,6) 'make docRef the active document Set app.ActiveDocument = docRef 'here you would include command statements 'that perform actions on the active document. Then, you could 'make a different document the active document 'use the ActiveDocument property of the Application object to 'bring otherDocRef front-most as the new active document Set app.ActiveDocument = otherDocRef

KAPITEL 3: Skripting in Photoshop

Festlegen des aktiven Objekts 27

JS

// Create 2 documents var docRef = app.documents.add( 4, 4) var otherDocRef = app.documents.add (4,6) //make docRef the active document app.activeDocument = docRef //here you would include command statements //that perform actions on the active document. Then, you could //make a different document the active document //use the activeDocument property of the Application object to //bring otherDocRef front-most as the new active document app.activeDocument = otherDocRef

Festlegen der aktiven EbeneDie folgenden Beispiele zeigen, wie Sie die Eigenschaft current layer (ActiveLayer/activeLayer) des Document-Objekts zum Festlegen der aktiven Ebene verwenden knnen. Um die aktive Ebene fr ein Dokument festlegen zu knnen, muss das Dokument selbst das aktuelle Dokument sein. ASset current layer of current document to layer Layer 1 of current document

HINWEIS: Photoshop benennt die Ebenen standardmig Ebene1, Ebene2 usw. VBS This example assumes appRef and docRef have been previously defined and assigned to the application object and a document object that contains at least one layer. appRef.ActiveDocument = docRef docRef.ActiveLayer = docRef.Layers(1)

Schlagen Sie die Eigenschaft ActiveLayer fr das Document-Objekt im Handbuch Adobe PhotoshopCS5 Visual Basic Scripting Reference oder im Visual Basic-Objektkatalog nach. HINWEIS: Sie knnen die zu verwendende Ebene auch ber den Ebenennamen angeben. Photoshop benennt die Ebenen standardmig Ebene1, Ebene2. Siehe Verweisen auf ArtLayer-Objekte auf Seite 38. JS// This example assumes docRef has been previously defined and assigned to a // document object that contains at least one layer. activeDocument = docRef docRef.activeLayer = docRef.layers[0]

Schlagen Sie die Eigenschaft activeLayer fr das Document-Objekt im Handbuch Adobe PhotoshopCS5 JavaScript Scripting Reference oder im ExtendScript Object Model Viewer nach. HINWEIS: Sie knnen die zu verwendende Ebene auch ber den Ebenennamen angeben. Photoshop benennt die Ebenen standardmig Ebene1, Ebene2. Siehe Verweisen auf ArtLayer-Objekte auf Seite 38.

KAPITEL 3: Skripting in Photoshop

ffnen eines Dokuments 28

Festlegen der aktiven KanleDa jeweils mehrere Kanle aktiv sein knnen, nimmt die Eigenschaft current channels (ActiveChannels/activeChannels) des Document-Objekts als Wert ein Kanal-Array auf. Um die aktiven Kanle eines Dokuments festlegen zu knnen, muss das Dokument das aktive Dokument sein. AS Whlen Sie mithilfe eines Kanal-Arrays den ersten und den dritten Kanal als aktiv aus:set current channels of current document to { channel 1 of current document, channel 3 of current document }

Sie knnen auch mithilfe der Eigenschaft component channels des Document-Objekts alle Kanle als aktiv auswhlen.set current channels of current document to component channels of current document

VBS

Whlen Sie mithilfe eines Kanal-Arrays den ersten und dritten Kanal des aktiven Dokuments als aktiv aus: This example assumes docRef is already the ActiveDocument Dim theChannels theChannels = Array(docRef.Channels(1), docRef.Channels(3)) docRef.ActiveChannels = theChannels

Sie knnen auch mithilfe der Eigenschaft Component Channels des Document-Objekts alle Kanle als aktiv auswhlen:appRef.ActiveDocument.ActiveChannels= _ appRef.ActiveDocument.ComponentChannels

JS

Whlen Sie mithilfe eines Kanal-Arrays den ersten und den dritten Kanal als aktiv aus:theChannels = new Array(docRef.channels[0], docRef.channels[2]) docRef.activeChannels = theChannels

Sie knnen auch mithilfe der Eigenschaft component Channels des Document-Objekts alle Kanle als aktiv auswhlen:app.activeDocument.activeChannels = activeDocument.componentChannels

ffnen eines DokumentsMit dem Befehl open/Open/open() des Application-Objekts knnen Sie ein vorhandenes Dokument ffnen. Sie mssen den Namen des Dokuments (d.h. den Pfad der Datei, die das Dokument enthlt) zusammen mit dem Befehl angeben.

ffnen einer Datei mit dem StandarddateiformatDa Photoshop viele verschiedene Dateiformate untersttzt, knnen Sie mit dem Befehl open/Open/open() das Format des Dokuments angeben, das Sie ffnen mchten. Wenn Sie das Format nicht angeben, leitet Photoshop das Standardformat der Datei fr Sie ab. In den folgenden Beispielen wird ein Dokument in dem fr das Dokument am besten geeigneten Format geffnet:

KAPITEL 3: Skripting in Photoshop

ffnen eines Dokuments 29

AS VBS JS

set theFile to alias "Applications:Documents:MyFile" open theFile fileName = "C:\MyFile" Set docRef = appRef.Open(fileName) var fileRef = File(app.path + "/Samples/Fish.psd") var docRef = app.open(fileRef)

Beachten Sie, dass Sie in JavaScript ein File-Objekt erstellen und dann einen Verweis auf das Objekt an den open()-Befehl bermitteln mssen.

Angeben der zu ffnenden DateiformateOpen-Klassen OpenOptionen

Photo CD OpenOptionen

Raw Format OpenOptionen

Camera Raw OpenOptionen

EPS OpenOptionen

PDF OpenOptionen

Fr die Dokumenttypen in der folgenden Liste knnen Sie Optionen festlegen, die bestimmen, wie das Dokument geffnet wird (z.B. Hhe und Breite des Fensters, in dem das Dokument geffnet wird, welche Seite bei einer Datei mit mehreren Seiten geffnet werden soll usw.).

Photo CD Camera Raw Raw-Format Adobe PDF EPS

Wenn Sie wissen mchten, welche Optionen Sie fr die einzelnen Dateitypen festlegen knnen, schlagen Sie die Eigenschaften der OpenOptions-Objekte nach, die mit den Namen der Dateiformate beginnen. Beispiel:

Schlagen Sie im Handbuch Adobe PhotoshopCS5 AppleScript Scripting Reference die Photo CD open options-Klasse oder die EPS open objects-Klasse nach. Schlagen Sie im Handbuch Adobe PhotoshopCS5 Visual Basic Scripting Reference bzw. Adobe PhotoshopCS5 JavaScript Scripting Reference das PhotoCDOpenOptions-Objekt oder das EPSOpenOptions-Objekt nach.

Die folgenden Beispiele zeigen, wie Sie ein generisches PDF-Dokument (mit mehreren Seiten und mehreren Bildern) mit folgenden Spezifikationen ffnen knnen:

Das Dokument wird im RGB-Modus mit einer Auflsung von 72Pixel/Zoll geffnet. Glttung wird eingesetzt, um die Zackenbildung an den Kanten von Bildern im Dokument zu minimieren.

KAPITEL 3: Skripting in Photoshop

ffnen eines Dokuments 30

Seite3 des Dokuments wird angezeigt. Die ursprngliche Form des Dokuments wird entsprechend den fr Hhe und Breite festgelegten Eigenschaften gendert, wenn die ursprngliche Form nicht doppelt so breit wie hoch ist.

AS

tell application "Adobe Photoshop CS5" set myFilePath to alias "OS X 10.5.8 US:Users:psauto:Desktop:opal_screen.pdf" with timeout of 300 seconds open myFilePath as PDF with options {class:PDF open options, mode:RGB, resolution:72, use antialias:true, page:3} end timeout end tell Dim appRef Set appRef = CreateObject("Photoshop.Application") 'Remember unit settings and set to values expected by this script Dim originalRulerUnits originalRulerUnits = appRef.Preferences.RulerUnits appRef.Preferences.RulerUnits = 1 'value of 1 = psPixels 'Create a PDF option object Dim pdfOpenOptionsRef Set pdfOpenOptionsRef = CreateObject("Photoshop.PDFOpenOptions") pdfOpenOptionsRef.AntiAlias = True pdfOpenOptionsRef.Mode = 2 ' psOpenRGB pdfOpenOptionsRef.Resolution = 72 pdfOpenOptionsRef.Page = 3 ' open the file Dim docRef Set docRef = appRef.Open(C:\\PDFFiles\MyFile.pdf, pdfOpenOptionsRef) 'Restore unit setting appRef.Preferences.RulerUnits = originalRulerUnits

VBS

JS

HINWEIS: Das ExtendScript File-Objekt erwartet eine Universal Resource Identifier-Notation (URI). Weitere Informationen finden Sie im Handbuch JavaScript Tools Guide.// Set the ruler units to pixels var originalRulerUnits = app.preferences.rulerUnits app.preferences.rulerUnits = Units.PIXELS // Get a reference to the file that we want to open var fileRef = new File(/c/pdffiles/myfile.pdf) // Create a PDF option object var pdfOpenOptions = new PDFOpenOptions pdfOpenOptions.antiAlias = true pdfOpenOptions.mode = OpenDocumentMode.RGB pdfOpenOptions.resolution = 72 pdfOpenOptions.page = 3 // open the file app.open( fileRef, pdfOpenOptions ) // restore unit settings app.preferences.rulerUnits = originalRulerUnits

KAPITEL 3: Skripting in Photoshop

Speichern eines Dokuments 31

Speichern eines DokumentsIm Folgenden finden Sie Optionen fr das Speichern von Dokumenten in Photoshop. Wenn Sie wissen mchten, welche Eigenschaften Sie fr ein bestimmtes Dateiformat festlegen knnen, schlagen Sie das Objekt nach, das mit dem Namen des Dateiformats beginnt. Wenn Sie z.B. mehr ber die Eigenschaften fr das Speichern einer .eps-Datei erfahren mchten, gehen Sie wie folgt vor:

Schlagen Sie im Handbuch Adobe PhotoshopCS5 AppleScript Scripting Reference die Klasse EPS save options nach. Schlagen Sie im Handbuch Adobe PhotoshopCS5 Visual Basic Scripting Reference bzw. Adobe PhotoshopCS5 JavaScript Scripting Reference EPSSaveOptions nach. Save-Klassen SaveOptionen

Photoshop

BMP

GIF

EPS

JPEG

PDF

PICT-Datei

PICTRessource

Pixar

PNG

TIFF

Raw

DSC1

DSC2

SGI RGB-

Targa

HINWEIS: Beachten Sie dabei, dass die Formate Open und Save nicht identisch sind. Einen Vergleich finden Sie unter Angeben der zu ffnenden Dateiformate auf Seite 29. HINWEIS: Die folgenden optionalen Formate sind nur verfgbar, wenn sie zustzlich installiert wurden:

Alias PIX Electric Image SGI RGB Wavefront RLA SoftImage

Mit den folgenden Skripten knnen Sie ein Dokument als .jpeg-Datei speichern: AStell application "Adobe Photoshop CS5" make new document set myFile to "OS X 10.5.8 US:Users:psauto:Desktop:Rat.jpg" set myOptions to {class:JPEG save options, embed color profile:false, format options:standard, matte:background color matte} save current document in file myFile as JPEG with options myOptions appending no extension without copying end tell

KAPITEL 3: Skripting in Photoshop

Festlegen von Anwendungsvoreinstellungen 32

VBS

Dim appRef,docRef Set appRef = CreateObject("Photoshop.Application") Set docRef = appRef.Documents.Add() Set jpgSaveOptions = CreateObject("Photoshop.JPEGSaveOptions") jpgSaveOptions.EmbedColorProfile = True jpgSaveOptions.FormatOptions = 1 'for psStandardBaseline jpgSaveOptions.Matte = 1 'for psNoMatte jpgSaveOptions.Quality = 1 appRef.ActiveDocument.SaveAs "c:\temp\myFile2", _ jpgSaveOptions, True, 2 'for psLowercase

JS

app.documents.add( 4, 4 ) jpgFile = new File( "/Temp001.jpeg" ) jpgSaveOptions = new JPEGSaveOptions() jpgSaveOptions.embedColorProfile = true jpgSaveOptions.formatOptions = FormatOptions.STANDARDBASELINE jpgSaveOptions.matte = MatteType.NONE jpgSaveOptions.quality = 1 app.activeDocument.saveAs(jpgFile, jpgSaveOptions, true, Extension.LOWERCASE)

Festlegen von AnwendungsvoreinstellungenSie knnen mit Ihrem Skript Anwendungsvoreinstellungen wie Farbwhler, Speicheroptionen fr Dateien, Einstellungen fr Hilfslinien und Raster usw. festlegen. HINWEIS: Die Eigenschaften in der settings-Klasse/im Preferences-Objekt entsprechen den Optionen im Dialogfeld Voreinstellungen von PhotoshopCS5, die Sie anzeigen knnen, indem Sie in Photoshop die Optionen Photoshop> Voreinstellungen (MacOS) bzw. Bearbeiten> Voreinstellungen (Windows) whlen. Erluterungen zu den einzelnen Voreinstellungen finden Sie in der Hilfe zu Photoshop. AS Mit den Eigenschaften der settings-Klasse knnen Sie die Anwendungsvoreinstellungen in AppleScript festlegen. Mit dem folgenden Skript werden die Einstellungen fr Lineale und Textgre festgelegt:set ruler units of settings to inch units set type units of settings to pixel units

Schlagen Sie im Handbuch Adobe PhotoshopCS5 AppleScript Scripting Reference oder im Photoshop-AppleScript-Wrterbuch die Klasse settings-object nach, um alle Einstellungsvoreinstellungen anzuzeigen, die Sie verwenden knnen. VBS Das Preferences-Objekt ist ein untergeordnetes Objekt des Application-Objekts. Wenn Sie das Preferences-Objekt in einem VBScript verwenden, mssen Sie sein Enthaltensein im Application-Objekt angeben.appRef.Preferences.RulerUnits = 2 'for PsUnits --> 2 (psInches) appRef.Preferences.TypeUnits = 1 'for PsTypeUnits --> 1 (psPixels)

Schlagen Sie im Handbuch Adobe PhotoshopCS5 Visual Basic Scripting Reference oder im Visual Basic-Objektkatalog das Preferences-Objekt nach, um alle Einstellungsvoreinstellungen anzuzeigen, die Sie verwenden knnen. Schlagen Sie auerdem die Eigenschaft Preferences des Application-Objekts nach.

KAPITEL 3: Skripting in Photoshop

Zulassen oder Verhindern von Dialogfeldern 33

JS

Das Preferences-Objekt ist ein untergeordnetes Objekt des Application-Objekts.preferences.rulerUnits = Units.INCHES preferences.typeUnits = TypeUnits.PIXELS

Schlagen Sie im Handbuch Adobe PhotoshopCS5 JavaScript Scripting Reference oder im ExtendScript Object Model Viewer das Preferences-Objekt nach, um alle Einstellungsvoreinstellungen anzuzeigen, die Sie verwenden knnen. Schlagen Sie auerdem die Eigenschaft preferences des Application-Objekts nach.

Zulassen oder Verhindern von DialogfeldernEs ist wichtig, dass Sie Dialogfelder ordnungsgem ber ein Skript steuern knnen. Wenn ein Dialogfeld angezeigt wird, wird das Skript angehalten, bis ein Anwender das Dialogfeld ausblendet. Dies stellt normalerweise bei einem interaktiven Skript kein Problem dar, bei dem davon ausgegangen wird, dass ein Anwender am Computer sitzt. Wenn Sie jedoch ein Skript verwenden, das in einem nicht berwachten Modus (Stapelmodus) ausgefhrt wird, mssen Sie verhindern, dass Dialogfelder angezeigt werden und Ihr Skript unterbrechen. Mithilfe der Eigenschaft display dialogs (DisplayDialogs/displayDialogs) des Application-Objekts steuern Sie, ob Dialogfelder angezeigt werden oder nicht. HINWEIS: Die Verwendung von Dialogfeldern in einem Skript entspricht in etwa der Verwendung von Stopps in einer Aktion in Photoshop. AS Das folgende Skript verhindert, dass Dialogfelder angezeigt werden:set display dialogs to never

Schlagen Sie im Handbuch Adobe PhotoshopCS5 AppleScript Scripting Reference oder im Photoshop-AppleScript-Wrterbuch die Class application nach, um die Werte zu ermitteln, die Sie fr die Eigenschaft display dialogs verwenden knnen. VBS Zum Festlegen von Voreinstellungen fr Dialogfelder verwenden Sie die Eigenschaft DisplayDialogs desApplication-Objekts. appRef.DisplayDialogs = 3 'for PsDialogModes --> 3 (psDisplayNoDialogs)

Beachten Sie, dass es sich bei DisplayDialogs um eine Eigenschaft des Application-Objekts handelt und Sie deshalb im Skript einen Verweis auf das Application-Objekt erstellen mssen, damit Sie die Eigenschaft erhalten. Schlagen Sie im Handbuch Adobe PhotoshopCS5 Visual Basic Scripting Reference oder im Visual Basic-Objektkatalog die Eigenschaft DisplayDialogs des Application-Objekts nach. Sie werden feststellen, dass es sich beim Datentyp fr diese Eigenschaft um die Konstante PsDialogModes handelt. Sie knnen auch die Optionen fr PsDialogModes nachschlagen. JS Zum Festlegen von Voreinstellungen fr Dialogfelder verwenden Sie die Eigenschaft displayDialogs desApplication-Objekts. displayDialogs = DialogModes.NO

Schlagen Sie im Handbuch Adobe PhotoshopCS5 JavaScript Scripting Reference oder im ExtendScript Object Model Viewer die Eigenschaft displayDialogs des Application-Objekts und anschlieend die Konstante DialogModes nach.

Arbeiten mit dem Objektmodell von PhotoshopDieser Abschnitt enthlt Informationen zur Verwendung der Objekte im Objektmodell von Photoshop. Informationen zu Objektmodellen finden Sie im Handbuch Introduction to Scripting sowie unter Photoshop-Objektmodell auf Seite 11.

KAPITEL 3: Skripting in Photoshop

Arbeiten mit dem Objektmodell von Photoshop 34

Verwenden des Application-ObjektsIn diesem Abschnitt wird beschrieben, wie und wann Sie das Application-Objekt in einem Skript verwenden knnen. Darber hinaus erfahren Sie, wie Sie einige Eigenschaften des Application-Objekts verwenden knnen. Sie verwenden die Eigenschaften und Befehle des Application-Objekts, um mit Photoshop-Funktionen und -Objekten wie den folgenden zu arbeiten:

Globale Einstellungen oder Voreinstellungen in Photoshop, wie Maeinheiten oder Farbeinstellungen (siehe Festlegen von Anwendungsvoreinstellungen auf Seite 32). Dokumente Sie knnen Dokumente hinzufgen oder ffnen und festlegen, welches Dokument aktiv sein soll. ffnen eines Dokuments auf Seite 28 und Festlegen des aktiven Objekts auf Seite 25. Aktionen Sie knnen Aktionen ausfhren, die mithilfe von Skripten oder unter Verwendung der Aktionenpalette in Photoshop erstellt wurden. Siehe Action Manager auf Seite 73.

Sie knnen die Eigenschaften des Application-Objekts verwenden, um z.B. die folgenden Informationen abzurufen:

Eine Liste aller auf dem System installierten Schriftarten.

AS: Stellen Sie theFonts auf fonts ein HINWEIS: In AppleScript ist fonts eine separate Sammlung, daher ist zum Abrufen dieser Sammlung kein Verweis auf das Application-Objekt erforderlich.

VBS: Stellen Sie fontsInstalled = AppRef.Fonts ein JS: var fontsInstalled = app.fonts

Der fr Adobe Photoshop verfgbare nicht belegte Speicherplatz (ber die Eigenschaft free memory (FreeMemory/freeMemory) des Application-Objekts). Der Speicherort des Preferences-Ordners (ber die Eigenschaft preferences folder (PreferencesFolder/preferencesFolder) des Application-Objekts).

Weitere Informationen erhalten Sie, wenn Sie die Eigenschaften des Application-Objekts im Referenzhandbuch oder im Objektbrowser der von Ihnen verwendeten Sprache nachschlagen.

Verwenden des Document-ObjektsDas Document-Objekt kann ein beliebiges geffnetes Dokument in Photoshop reprsentieren. Sie knnen sich ein Document-Objekt als eine Datei oder als eine Arbeitsflche vorstellen. Sie knnen das Document-Objekt zu folgenden Zwecken verwenden:

Zugriff auf im Document-Objekt enthaltene Skriptobjekte, wie ArtLayer- oder Channel-Objekte. Weitere Informationen finden Sie unter Photoshop-Objektmodell auf Seite 11. Manipulieren eines bestimmten Document-Objekts mithilfe von Befehlen oder Methoden. Sie knnen z.B. die Arbeitsflche freistellen, drehen oder spiegeln, die Gre des Bildes oder der Arbeitsflche anpassen oder das Bild zuschneiden. Eine Veranschaulichung finden Sie unter Manipulieren eines Document-Objekts auf Seite 35. Abrufen der aktiven Ebene. Siehe Festlegen der aktiven Ebene auf Seite 27. Speichern des aktuellen Dokuments. Siehe Speichern eines Dokuments auf Seite 31. Kopieren und Einfgen innerhalb des aktiven Dokuments oder zwischen verschiedenen Dokumenten. Siehe Verwenden der Zwischenablage auf Seite 54.

KAPITEL 3: Skripting in Photoshop

Arbeiten mit dem Objektmodell von Photoshop 35

Manipulieren eines Document-ObjektsDie nachstehenden Beispiele zeigen, wie Sie folgende Aufgaben ausfhren knnen:

Speichern der vorhandenen Voreinstellungen fr Linealmaeinheiten und Einstellen der Maeinheit fr Lineale auf Zoll ffnen einer vorhandenen Datei als Dokument (unter Verwendung von Ente.tif ) ndern der Bildgre auf eine Breite von 4Zoll und eine Hhe von 4Zoll ndern der Gre des Dokumentfensters (bzw. der Arbeitsflche) auf eine Hhe von 4Zoll und eine Breite von 4Zoll Zuschneiden des oberen und unteren Bildrands Freistellen des Bildes Spiegeln des gesamten Fensters Wiederherstellen der ursprnglichen Maeinheit fr Lineale

HINWEIS: Informationen zu Linealeinheiten finden Sie unter Festlegen von Anwendungsvoreinstellungen auf Seite 32. AStell application "Adobe Photoshop CS5" set saveUnit to ruler units of settings set ruler units of settings to inch units set duckFile to alias "OS X 10.5.8 US:Applications:Adobe Photoshop CS5:Samples:Ducky.tif" open duckFile set docRef to current document resize image docRef width 4 height 4 resize canvas docRef width 4 height 4 trim docRef basing trim on top left pixel with top trim and bottom trim without left trim and right trim set ruler units of settings to pixel units crop current document bounds {100, 200, 400, 500} angle 45 width 20 height 20 flip canvas docRef direction horizontal set ruler units of settings to saveUnit end tell Dim appRef, docRef Set appRef = CreateObject("Photoshop.Application") 'save original ruler units, then set ruler units to inches startRulerUnits = appRef.Preferences.RulerUnits appRef.Preferences.RulerUnits = 2 'for PsUnits --> 2 (psInches) Set docRef = appRef.Open(appRef.Path & "\Samples\Ducky.tif") docRef.ResizeImage 4,4 docRef.ResizeCanvas 4,4 'Trim the document with ' type = 1 (psTopLeftPixel) ' top=true, left=false, bottom=true, right=false docRef.Trim 1,True,False,True,False

VBS

KAPITEL 3: Skripting in Photoshop

Arbeiten mit dem Objektmodell von Photoshop 36

'the crop command uses unit values 'so change the ruler units to pixels appRef.Preferences.RulerUnits = 1 ' (psPixels) 'Crop the document with ' angle=45, width=20,height=20 docRef.Crop Array(100,200,400,500),45,20,20 docRef.FlipCanvas 1 ' psHorizontal 'restore ruler units appRef.Preferences.RulerUnits = startRulerUnits

JS

//save original ruler units, then assign it to inches startRulerUnits = app.preferences.rulerUnits app.preferences.rulerUnits = Units.INCHES //get a reference to the file, and open it var fileRef = new File(app.path + "/samples/ducky.tif") var docRef = app.open(fileRef) //this sample script assumes the ruler units have been set to inches docRef.resizeImage( 4,4 ) docRef.resizeCanvas( 4,4 ) docRef.trim(TrimType.TOPLEFT, true, false, true, false) //the crop command uses unit values //so change the ruler units to pixels app.preferences.rulerUnits =Units.PIXELS docRef.crop (new Array(100,200,400,500), 45, 20, 20) docRef.flipCanvas(Direction.HORIZONTAL) //restore original preferences app.preferences.rulerUnits = startRulerUnits

Arbeiten mit Layer-ObjektenDas Objektmodell von Photoshop enthlt zwei verschiedene Layer-Objekttypen: ArtLayer-Objekte, die Bildinhalte enthalten knnen und nahezu identisch mit Ebenen i