2011-06-24 19 views

Odpowiedz

2

UPDATE: ja testowałem kod poniżej w CS5 i Mac OS 10.7 i może potwierdzić, że działa to nawet przy prostym przełączeniu z tell application "Adobe Photoshop CS4" na tell application "Adobe Photoshop CS5". Błąd, który otrzymujesz jest wynikiem istnieje albo nie jest to dokument otwarty w pierwszym miejscu, ponieważ są kierowane dokument 1. Można łatwo sprawdzić za to z następujących powodów:

tell application "Adobe Photoshop CS5" 
    set documentCount to count documents 
    if documentCount > 0 then 
     set theDocument to document 1 
     set theFilePath to file path of theDocument 
     return theFilePath 
    else 
     -- no documents open. what to do? 
    end if 
end tell 

OLD ODPOWIEDŹ: Nie mam CS5 (jeszcze), ale tutaj jest to dla CS4, i wyobrażam sobie, że wersja CS5 nie będzie zbyt różna, jeśli w ogóle, ponieważ Adobe wykonało dobrą robotę normalizując API od CS3:

tell application "Adobe Photoshop CS4" 
    set theDocument to document 1 
    set theFilePath to file path of theDocument 
    return theFilePath 
end tell 
--> Result: Macintosh HD:path:to:file:filename.ext 
+0

Mam problem z uruchomieniem tego w Adobe CS5 i Lion. Jest to sposób, w jaki jest to udokumentowane, ale nie działa. Jeśli to działa dla innych z CS5 na Lion, daj mi znać, czy są jakieś ustawienia, które muszę sprawdzić w Photoshopie lub w systemie. – cwd

+0

Właściwie miałem otwarte dokumenty, więc to nie problem, ale myślę, że jest tylko udokumentowany błąd z Applescript w Photoshop CS5 - http://forums.adobe.com/thread/632681 – cwd

+0

Czy naprawdę potrzebujesz zmiennych tymczasowych, lub czy możesz po prostu "zwrócić ścieżkę do pliku dokumentu 1"? – tomlogic