Akcje Photoshopa z poziomu Lightrooma – Re-używalny Droplet
Jak uruchamiać akcje Photoshopa z poziomu Lightrooma bez konieczności przerabiania dropletu przy każdej zmianie. Prosty schemat z wykorzystaniem skryptu JS, który daje elastyczność i wygodę.
Akcje w Photoshopie są świetnym narzędziem do automatyzacji, ale uruchamianie ich bezpośrednio z Lightrooma daje najlepsze z dwóch światów – wygodę LR i moc PS.
- Standardowe sposoby uruchamiania akcji w PS
- Czym jest Droplet?
- Niedogodności na macOS
- Integracja z Lightroomem
- Re-używalny Droplet – jak to obejść?
- Struktura plików
- Co zyskujemy?
Standardowe sposoby uruchamiania akcji w PS
Akcje na wielu plikach w Photoshopie można uruchamiać na kilka popularnych sposobów:
- Plik > Automatyzuj > Sekwencja wsadowa – klasyczne rozwiązanie dla wsadowego przetwarzania
- Plik > Skrypty > Procesor obrazów… – wygodne, ale ograniczone do spłaszczonych obrazów na wyjściu
Czym jest Droplet?
Droplet to akcja zakodowana do pliku wykonywalnego systemu operacyjnego. Tworząc droplet z akcji, otrzymujemy mały ‘programik’, na który możemy przeciągnąć plik – Photoshop otworzy się i wykona na nim akcję automatycznie.
Co istotne: podczas tworzenia dropletu kolejne kroki akcji zostają na stałe zapisane wewnątrz pliku wykonywalnego, bez żadnej synchronizacji z oryginalną akcją. Jeśli usuniesz akcję, droplet nadal działa tak samo. Ma to swój urok w stylu zrób i zapomnij – np. droplet do zmiany rozmiaru pliku na kilka formatów czy nakładania serii korekcji dostosowujących styl zdjęcia.
Niedogodności na macOS
Na Macu każdy nowy droplet to dla systemu nowy program, co oznacza konieczność ręcznego zatwierdzenia w ustawieniach systemowych. W praktyce każda zmiana w akcji wymaga:
- Zmodyfikowania akcji w Photoshopie
- Stworzenia nowego dropletu
- Otwarcia dropletu i odblokowania go w ustawieniach systemowych
- Dodania nowego dropletu jako aplikacji w preferencjach Lightrooma
To dość żmudne, szczególnie gdy często modyfikujesz swój workflow.
Integracja z Lightroomem
Kluczem do uruchamiania akcji PS z poziomu LR jest dodanie dropletu jako dodatkowego edytora zewnętrznego. Wchodzimy w:
Edycja > Preferencje > Edytory zewnętrzne > Dodatkowe edytory zewnętrzne
Aby uruchomić droplet na zdjęciu, klikamy prawym przyciskiem myszy na plik i wybieramy Edytuj w > (nazwa edytora z dropletem).
Należy pamiętać, że zmiana czegokolwiek w wykonywanych operacjach PS wymaga przejścia całej ścieżki tworzenia i dodawania dropletu od początku – akcje są ‘zabetonowane’ wewnątrz dropletu.
Re-używalny Droplet – jak to obejść?
Rozwiązaniem jest stworzenie dropletu, który nie zawiera akcji bezpośrednio, lecz uruchamia skrypt JS, który z kolei wywołuje akcję po nazwie.
Ważna uwaga: jeśli akcja A jest używana wewnątrz akcji B i stworzymy droplet z akcji B, to akcja A również zostanie na stałe wbudowana w droplet – nie będzie to referencja. Skrypt JS pozwala ominąć ten problem.
Schemat działania
Droplet (plik wykonywalny)
└── Akcja tymczasowa: Droplet_01_tool
└── Skrypt: DROPLET_01.js
└── Wywołuje akcję: DYNAMIC_DROPLETS > DROPLET_01
Kroki konfiguracji
- Tworzymy tymczasową akcję Droplet_01_tool, która uruchamia skrypt
DROPLET_01.js - W pliku JS określamy nazwę zestawu akcji (np.
DYNAMIC_DROPLETS) oraz nazwę akcji (np.DROPLET_01) - Tworzymy droplet z akcji tymczasowej – po jego stworzeniu akcję tymczasową możemy usunąć
- Od tej pory droplet zawsze będzie wywoływał akcję
DYNAMIC_DROPLETS > DROPLET_01przez skrypt JS
Ważne! Zmiana nazwy zestawu akcji lub samej akcji spowoduje, że droplet przestanie działać. Nazwy muszą być niezmienne.
W akcji DYNAMIC_DROPLETS > DROPLET_01 możemy swobodnie modyfikować zawartość – zmiany będą natychmiast widoczne bez potrzeby przerabiania dropletu, ponownego zatwierdzania go w systemie czy aktualizowania w preferencjach Lightrooma.
Skrypt DROPLET_01.js
// Skrypt do uruchamiania akcji w Adobe Photoshop
// KONFIGURACJA --------------------------------------------------------
var nazwaZestawu = "DYNAMIC_DROPLETS"; // Nazwa zestawu akcji
var nazwaAkcji = "DROPLET_01"; // Nazwa akcji do uruchomienia
// KONIEC KONFIGURACJI -------------------------------------------------
// FUNKCJA GŁÓWNA
function uruchomAkcje(akcja, zestaw) {
try {
// Sprawdź czy jest otwarty jakiś dokument
if (app.documents.length === 0) {
alert("Błąd: Nie ma otwartego żadnego dokumentu.\nOtwórz plik przed uruchomieniem akcji.");
return false;
}
// Uruchom akcję
app.doAction(akcja, zestaw);
return true;
} catch (e) {
// Obsługa błędów
alert("Błąd podczas uruchamiania akcji:\n\n" +
"Akcja: " + akcja + "\n" +
"Zestaw: " + zestaw + "\n\n" +
"Szczegóły błędu: " + e.message + "\n\n" +
"Upewnij się, że:\n" +
"1. Zestaw akcji jest załadowany w panelu Actions\n" +
"2. Nazwy akcji i zestawu są poprawne (wielkość liter ma znaczenie)\n" +
"3. Akcja nie jest zablokowana ani ukryta");
return false;
}
}
// URUCHOMIENIE
uruchomAkcje(nazwaAkcji, nazwaZestawu);
Struktura plików
Zarówno droplety jak i skrypty muszą znajdować się w stałych, niezmiennych lokalizacjach na dysku. Proponowana struktura:
Dokumenty/
└── PS_automation/
└── DYNAMIC_DROPLETS/
├── DROPLET_01.js
└── DROPLET_01 ← plik wykonywalny (droplet)
Co zyskujemy?
Droplet, który nie ma akcji ‘zabetonowanej’ w środku, a jedynie powiązanie przez nazwę. Możemy swobodnie modyfikować zawartość akcji w Photoshopie bez potrzeby przerabiania dropletu, ponownego zatwierdzania go w systemie czy aktualizowania w preferencjach Lightrooma.
Nazewnictwo i szczegóły workflow będą różne dla każdego – kluczowe jest zrozumienie mechanizmu, który stoi za tym rozwiązaniem.
Powodzenia!