Akcje Photoshopa z poziomu Lightrooma – Re-używalny Droplet

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

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:

  1. Zmodyfikowania akcji w Photoshopie
  2. Stworzenia nowego dropletu
  3. Otwarcia dropletu i odblokowania go w ustawieniach systemowych
  4. 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

  1. Tworzymy tymczasową akcję Droplet_01_tool, która uruchamia skrypt DROPLET_01.js
  2. W pliku JS określamy nazwę zestawu akcji (np. DYNAMIC_DROPLETS) oraz nazwę akcji (np. DROPLET_01)
  3. Tworzymy droplet z akcji tymczasowej – po jego stworzeniu akcję tymczasową możemy usunąć
  4. Od tej pory droplet zawsze będzie wywoływał akcję DYNAMIC_DROPLETS > DROPLET_01 przez 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!


© 2024. Wszelkie prawa zastrzeżone.

Powered by Hydejack v9.2.1