hilfdirselbst.ch
Facebook Twitter gamper-media
Mac OS X enthält verschiedene integrierte Werkzeuge und Technologien, mit denen sich gängige Aufgaben schnell und einfach automatisieren lassen.
« « 1 2 3 » »  
HFPatzi
Beiträge: 37
15. Feb 2012, 10:47
Beitrag #1 von 44
Bewertung:
(9730 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Photoshop Pfade Kopieren


Hallo zusammen,

da ich eine faule Socke bin, bin ich mal wieder auf der Suche, mir das Leben etwas zu erleichtern. Ich habe folgendes Problem:

Ich muss zu sehr vielen Bildern, die Photoshop Pfade von einem Bild in ein anderes Kopieren (das Quell- und das Zielbild sind, bis auf die Qualität und das Dateiformat identisch). Bisher habe ich das alles von Hand gemacht, also: Quell- und Zielbild öffnen und einen Pfad nach dem Anderen "rübergezogen. Da das jetzt aber immer mehr Bilder werden, suche ich nach einer Möglichkeit, das ganze zu automatisieren. Ich habe leider nur gar keine Idee wie ich das ganze angehen soll. Fortgeschrittene Applescript-Kentnisse sind vorhanden. Mir fehlt nur der Startschuss ;-)

Vielleicht kann mir hier ja jemand helfen.

Vielen Dank schonmal im Vorraus!

MfG

Patzi
Top
 
X
Hans Haesler  M  p
Beiträge: 5580
15. Feb 2012, 11:34
Beitrag #2 von 44
Beitrag ID: #489935
Bewertung:
(9639 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Photoshop Pfade Kopieren


Hallo Patzi,

herzlich willkommen im HDS-AppleScript-Forum! :-)

Für Deine Aufgabe hat bestimmt der eine oder andere eine fertige Lösung bereit.

Nur: Wir müssten noch wissen, welches Programm verwendet wird, welche Version. Und auch: Welches Mac OS X? PowerPC oder Intel?

Weiter: Sind die Namen der Bilder identisch? Die Endungen auch? Geht es darum, in einem Dokument die niedrigaufgelösten Bilder gegen eine hochaufgelöste Version zu tauschen?

Gruss, Hans
als Antwort auf: [#489926] Top
 
HFPatzi
Beiträge: 37
15. Feb 2012, 11:46
Beitrag #3 von 44
Beitrag ID: #489936
Bewertung:
(9633 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Photoshop Pfade Kopieren


Hallo Hans,

danke für deine schnelle Antwort! ;-)

Zu den fehlenden Infos: Photoshop CS4 wird verwendet auf OSX 10.5.8, Intel.

Zu den Bildern: Die namen sind bis auf den Suffix Identisch (*.jpg & *.tif)

Es geht im Endeffekt nur darum die im qualitativ schlechteren Bild vorhandenen Freistellpfade (ganz normale Pfade, keine Beschneidungspfade) in das qualitativ bessere Bild zu kopieren. Die Bildgröße ist bei beiden Bildern gleich, dementsprechend auch die Pfade.

Gruß
Patzi
als Antwort auf: [#489935] Top
 
Hans Haesler  M  p
Beiträge: 5580
15. Feb 2012, 11:58
Beitrag #4 von 44
Beitrag ID: #489937
Bewertung:
(9626 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Photoshop Pfade Kopieren


Hallo Patzi,

bitteschön.

Also ... dafür habe ich keine Lösung bereit. Und vermutlich hat so was noch niemand per Script erledigt.
Hoffen wir auf einen interessierten Mitleser, dem die Umsetzung gelingt.

Gruss, Hans
als Antwort auf: [#489936] Top
 
HFPatzi
Beiträge: 37
15. Feb 2012, 13:02
Beitrag #5 von 44
Beitrag ID: #489939
Bewertung:
(9577 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Photoshop Pfade Kopieren


Jap, da bin ich mal gespannt :)
als Antwort auf: [#489937] Top
 
Hans Haesler  M  p
Beiträge: 5580
15. Feb 2012, 13:37
Beitrag #6 von 44
Beitrag ID: #489942
Bewertung:
(9561 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Photoshop Pfade Kopieren


Hallo Patzi,

ja, ich bin auch gespannt.

Ich hatte Dein erstes Posting zuwenig genau gelesen und dachte an Dateipfade, welche in einem InDesign- oder QuarkXPress-Dokument ausgetauscht werden sollen.

Ich vermute, dass Du die Freistellungspfade im Bedienfeld auswählst und dann die ausgewählte Bedienfeld-Zeile ins Zielbild "rüberziehst".

Man könnte auch den ausgewählten Pfad kopieren und einsetzen. Und das ist vermutlich das, was man per Script versuchen müsste.

Gruss, Hans
als Antwort auf: [#489939] Top
 
HFPatzi
Beiträge: 37
15. Feb 2012, 15:03
Beitrag #7 von 44
Beitrag ID: #489946
Bewertung:
(9534 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Photoshop Pfade Kopieren


Stimmt, das war auch mein Gedanke. Ich weiß nur nicht genau, wie ich Photoshop Klarmachen kann welches das Quell- und welches das Zieldokument sein soll. Bzw. ist mir eine Lösung mit AS-Droplet vorgeschwebt. Nur müsste man dann ja auch wieder AS sagen welche Bilder man als Quell- und Welche man als Zielbilder definieren möchte.
als Antwort auf: [#489942] Top
 
Hans Haesler  M  p
Beiträge: 5580
15. Feb 2012, 18:45
Beitrag #8 von 44
Beitrag ID: #489983
Bewertung:
(9505 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Photoshop Pfade Kopieren


Hallo Patzi,

anders als mit QuarkXPress bleibt mit Photoshop das Dokument, welches als erstes geöffnet wurde, document 1, auch wenn das zweite Dokument im Vordergrund ist. Auch mit front document ist das Verhalten gleich.

Um sicher zu gehen, könnte man sich aber auch an den Namen orientieren.
Angenommen das Quelldokument hat die Endung ".jpg" und das Zieldokument ".tif", dann kann so festgestellt werden, welches Dokument welches ist:

Code
tell application "Adobe Photoshop CS4" 
set docName1 to name of document 1
set docName2 to name of document 2
if docName1 ends with ".jpg" then
set sourceDoc to docName1
set targetDoc to docName2
else
set sourceDoc to docName2
set targetDoc to docName1
end if
end tell
{sourceDoc, targetDoc}

Und in der Folge kann man die Dokumente so adressieren

Code
tell application "Adobe Photoshop CS4" 
tell document sourceDoc
-- tu was
end tell
end tell

Gruss, Hans
als Antwort auf: [#489946]
(Dieser Beitrag wurde von Hans Haesler am 15. Feb 2012, 18:46 geändert)
Top
 
Hans Haesler  M  p
Beiträge: 5580
15. Feb 2012, 21:22
Beitrag #9 von 44
Beitrag ID: #489995
Bewertung:
(9481 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Photoshop Pfade Kopieren


Hallo Patzi,

mit current document bekommt man immer das Dokument im Vordergrund.

Und das wird in der folgenden Studie auch benutzt, um die Dokumente abwechslungsweise in den Vordergrund zu bringen.

Code
tell application "Adobe Photoshop CS4" 
activate
set docName1 to name of document 1
set docName2 to name of document 2
if docName1 ends with ".jpg" then
set sourceDoc to docName1
set targetDoc to docName2
else
set sourceDoc to docName2
set targetDoc to docName1
end if
-- eine Schleife durch die Pfade des Quelldokuments
repeat with p from 1 to count of path items of document sourceDoc
-- das Quelldokument in den Vordergrund rücken
set current document to document sourceDoc
-- den aktuellen Pfad auswählen
select path item p of document sourceDoc
-- kopieren
copy
-- das Zieldokument in den Vordergrund rücken
set current document to document targetDoc
-- den Handler aufrufen, welcher den Pfad einsetzt
my pastePath()
end repeat
end tell

on pastePath()
tell application "System Events"
keystroke "v" using {command down}
end tell
end pastePath

Währenddem der Befehl copy problemlos funktioniert, will es mit paste nicht klappen (ich benutze Photoshop CS5 unter SnowLeopard, habe aber hier das CS5 in CS4 geändert).
Als Ersatz wird UI-Scripting eingesetzt. Dabei wird die Taste "v" angetippt (= keystroke "v"), währenddem die Befehlstaste niedergehalten wird (= using {command down}).

Gruss, Hans
als Antwort auf: [#489983] Top
 
HFPatzi
Beiträge: 37
16. Feb 2012, 10:47
Beitrag #10 von 44
Beitrag ID: #490054
Bewertung:
(9407 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Photoshop Pfade Kopieren


Hey Hans!

Superklasse, vielen Dank dafür!!!

Das war sogar mehr als der Startschuss, den ich gebraucht habe :-)

Ich werde jetzt versuchen, das ganze noch in ein AS-Droplet zu packen, damit ich einfach nur den kompletten Ordner draufziehen muss.

Werde das Ergebnis sobald fertig, oder sobald ich eine Frage habe auch hier Posten.

Meinen größten Respekt für deinen Einsatz hier. So Leute wie du, helfen mir, ein paar Stunden früher Feierabend zu machen ;-)

Gruß
Patzi
als Antwort auf: [#489995] Top
 
HFPatzi
Beiträge: 37
16. Feb 2012, 17:25
Beitrag #11 von 44
Beitrag ID: #490117
Bewertung:
(9378 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Photoshop Pfade Kopieren


Hey Hans,

eine letzte Frage für heute :-)

Gibt es eine Möglichkeit, die Auswahl eines Pfades in der Pfadpalette von Photoshop aufzuheben? Momentan kopiert mir das Script alle Pfade des Quelldocs in einen einzelnen Pfad im Zieldoc. Händisch hatte ich das immer so gelöst, dass ich den in der Photoshop-Pfadpalette ausgewählten Pfad deaktiviert hatte.

Code
deselect path item 


nach

Code
my pastePath() 


funtioniert leider nicht.

Gruß
Patzi
als Antwort auf: [#490054] Top
 
kkauer
Beiträge: 661
16. Feb 2012, 20:22
Beitrag #12 von 44
Beitrag ID: #490126
Bewertung:
(9362 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Photoshop Pfade Kopieren


Antwort auf [ HFPatzi ] Es geht im Endeffekt nur darum die im qualitativ schlechteren Bild vorhandenen Freistellpfade (ganz normale Pfade, keine Beschneidungspfade) in das qualitativ bessere Bild zu kopieren. Die Bildgröße ist bei beiden Bildern gleich, dementsprechend auch die Pfade.

Eventuell ist der umgekehrte Weg (Pixel ins Pfaddokument kopieren) einfacher.
http://forums.adobe.com/message/3732257
als Antwort auf: [#489936]
(Dieser Beitrag wurde von kkauer am 16. Feb 2012, 20:25 geändert)
Top
 
Hans Haesler  M  p
Beiträge: 5580
16. Feb 2012, 21:24
Beitrag #13 von 44
Beitrag ID: #490129
Bewertung:
(9343 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Photoshop Pfade Kopieren


Hallo Patzi,

vielleicht genügt es, die Auswahl im Zieldokument aufzuheben:

Code
tell application "Adobe Photoshop CS5" 
activate
set docName1 to name of document 1
set docName2 to name of document 2
if docName1 ends with ".jpg" then
set sourceDoc to docName1
set targetDoc to docName2
else
set sourceDoc to docName2
set targetDoc to docName1
end if
-- eine Schleife durch die Pfade des Quelldokuments
repeat with p from 1 to count of path items of document sourceDoc
-- das Quelldokument in den Vordergrund rücken
set current document to document sourceDoc
-- den aktuellen Pfad auswählen
select path item p of document sourceDoc
-- kopieren
copy
-- das Zieldokument in den Vordergrund rücken
set current document to document targetDoc
-- den Handler aufrufen, welcher den Pfad einsetzt
my pastePath()
-- die Auswahl im Zieldokument aufheben
try
deselect every path item of document targetDoc
end try
end repeat
end tell

on pastePath()
tell application "System Events"
keystroke "v" using {command down}
end tell
end pastePath

Falls nicht, kannst Du mal versuchen, ob es mit dem JavaScript funktioniert, auf welches kkauer hingewiesen hat.

Gruss, Hans
als Antwort auf: [#490117] Top
 
HFPatzi
Beiträge: 37
17. Feb 2012, 08:14
Beitrag #14 von 44
Beitrag ID: #490140
Bewertung:
(9296 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Photoshop Pfade Kopieren


Hans,

du bist ab heute mein persönlicher Held ;-)

Funktioniert einwandfrei und ich glaube ein Paar meiner Kollegen werden mir jetzt um den Hals fallen. Das leite ich dann einfach weiter :-)

Vielen Dank auch an dich, kkauer!

So kann ein Freitag beginnen!

Vielen, vielen Dank und ein schönes Wochenende!

Grüße
Patzi
als Antwort auf: [#490129] Top
 
Hans Haesler  M  p
Beiträge: 5580
17. Feb 2012, 10:31
Beitrag #15 von 44
Beitrag ID: #490169
Bewertung:
(9272 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Photoshop Pfade Kopieren


Hallo Patzi,

bitteschön. Ich bedanke mich für die Ehrung. :-)

Nun bin ich gespannt auf das Droplet. Gar nicht so einfach, die Datei-Paare ausfindig zu machen.

Gruss, Hans
als Antwort auf: [#490140] Top
 
« « 1 2 3 » »  
X