Come automatizzare Photoshop con gli script di Photoshop

Come automatizzare Photoshop con gli script di Photoshop / Programmazione

Photoshop è uno strumento meraviglioso per la modifica delle immagini - e non è un segreto che siamo grandi fan qui. In precedenza abbiamo spiegato come progettare un logo semplice Come progettare un logo semplice in Photoshop Come progettare un logo semplice in Photoshop Photoshop può fare molto di più che modificare le foto: è più che capace di un semplice lavoro di progettazione. Qui ti mostriamo come creare un semplice logo geometrico. Ulteriori informazioni e come correggere le foto sovraesposte, quindi l'automazione è il prossimo passaggio logico una volta acquisite le nozioni di base.

Potresti aver sentito parlare Azioni di Photoshop. Questi forniscono un modo semplice per automatizzare le attività. Oggi ti mostrerò come usare Photoshop Scripts. Gli script di Photoshop sono leggermente più potenti delle azioni e ti danno la possibilità di alterare il comportamento dello script in fase di esecuzione - qualcosa che le azioni non possono fare!

Non preoccuparti se sembra complesso: gli script sono scritti in JavaScript Che cos'è JavaScript e Internet esiste senza di esso? Che cos'è JavaScript e Internet può esistere senza di esso? JavaScript è una di quelle che molti danno per scontato. Tutti lo usano. Per saperne di più, un linguaggio semplice ma potente.

Se sei un fan di GIMP o non vuoi spendere soldi per Photoshop, consulta la nostra guida per automatizzare GIMP con gli script Risparmia tempo e fatica automatizzando GIMP con gli script Risparmia tempo e fatica automatizzando GIMP con gli script L'automazione delle azioni con gli script Python in GIMP può farti risparmiare un sacco di tempo. Non è facile iniziare, ma una volta che conosci queste basi, sarai sulla buona strada! Leggi di più .

Il tuo primo script: ridimensiona le immagini

Quando si scrivono script, è possibile utilizzare ExtendScript Toolkit. Non devi usare questo, puoi usare qualsiasi editor di testo che ti piace (mi piace il Sublime Text), ma ci sono molti benefici nell'utilizzare questo toolkit. Il più grande vantaggio è che puoi impostare punti di interruzione, che rendono molto facile eseguire il debug del codice e identificare eventuali bug.

ExtendScript Toolkit è incluso con il tuo abbonamento Creative Cloud, quindi vai avanti e installalo dal tuo App Creative Cloud o il sito sopra.

Apri il toolkit una volta installato. Ti verrà presentata questa interfaccia dall'aspetto piuttosto datato:

Ecco il codice per il tuo primo script: copia e incolla questo nella finestra del codice principale a sinistra:

current_document = app.activeDocument; new_width = 670; current_document.resizeImage (UnitValue (new_width, 'px'), null, null, ResampleMethod.BICUBIC);

Analizziamo cosa sta facendo questo codice. Il current_document variabile memorizza il documento attivo oggetto da Photoshop. Questo è accessibile usando il app.activeDocument sintassi. Se non hai Photoshop in esecuzione con un documento aperto, questo codice lo farà lanciare un'eccezione. Le eccezioni sono modi in cui il codice interrompe l'esecuzione: questo script non può continuare se non c'è alcun documento!

Il new_width variabile memorizza la larghezza che desideri che il tuo nuovo documento sia.

Finalmente, il ResizeImage metodo ridimensiona l'immagine. Questo deve essere accessibile tramite il current_document variabile. Devi passare la tua nuova larghezza (convertita in pixel attraverso il Valore unitario metodo), e il ResampleMethod di bicubic.

Sono disponibili cinque principali metodi di ricampionamento. Questi variano tutti in termini di velocità e qualità, quindi giocare con loro (anche se il Bicubico va bene per la maggior parte degli scopi). Ecco un breve riepilogo delle differenze:

  1. Il vicino più prossimo: Molto veloce ma essenziale.
  2. bilineare: Meglio del vicino più vicino, ma più lento e meno buono di quello bicubico.
  3. bicubic: Risultati molto buoni, ma computazionalmente costosi.
  4. Smoother bicubico: Una versione migliorata di Bicubic per l'upscaling (che ingrandisce).
  5. Bicubico più nitido: Una versione potenziata di Bicubic progettata per il downsampling (rendendo più piccoli).

Ricordati di capitalizzare questi quando li usi nel tuo codice.

Ora che hai capito il codice, è ora di eseguirlo! Assicurati di avere Photoshop aperto, insieme a un documento.

Nella parte superiore di ExtendScript Toolkit, modificare il file bersaglio menu a discesa (in alto a sinistra) da ExtendScript Toolkit CC a Adobe Photoshop CC 2017 (o qualunque sia la tua particolare versione di Photoshop). Se stai scrivendo script per altre app di Adobe, puoi cambiarlo con quelli.

Ora premi il Giocare pulsante a destra del menu a discesa target, sul In alto a destra del tuo codice.

Se tutto è eseguito correttamente, il documento viene ridimensionato (non dimenticare di salvarlo). Il Console JavaScript in alto a destra del tuo toolkit mostrerà l'output del tuo script. Dato che non c'è uscita, questo dirà Risultato: indefinito.

Se c'è un problema (come un'eccezione lanciata), il tuo codice non verrà eseguito e otterrai una barra arancione in approssimativamente la posizione del problema.

Questo potrebbe essere un semplice errore di battitura, quindi dopo aver interrotto lo script (Controlli in alto a destra > Pulsante di arresto), ricontrolla:

  • Il tuo codice è corretto e non ha errori di battitura.
  • Photoshop è in esecuzione.
  • Hai un documento aperto in Photoshop.

Esecuzione di script

Ora il tuo codice funziona correttamente, è ora di aggiungerlo a Photoshop.

Dentro il tuo toolkit, vai a File > Salvare, e salva il tuo script in un luogo adatto con un nome adatto. Di default, questo sarà il Adobe Scripts cartella. Nota come gli script devono finire nel .JSX formato.

All'interno di Photoshop, vai a File > Script > Gestore degli eventi di script. zecca Abilita eventi per eseguire script / azioni.

Una volta abilitata, questa interfaccia consente di configurare gli script esistenti da eseguire quando si verificano determinate azioni. Ci sono diverse aree chiave:

  1. Evento di Photoshop: Questo è quando lo script verrà eseguito. È possibile scegliere tra una varietà di opzioni, come la stampa, l'apertura di un nuovo documento e molte altre.
  2. script: Questo è lo script da eseguire. Ce ne sono alcuni di base incorporati, ma puoi anche assegnare uno dei tuoi script qui.
  3. Azione: Se non stai utilizzando uno script, puoi scegliere un'azione di base da eseguire, come ad esempio il salvataggio in PDF.

Selezionare copione, e quindi scegliere Navigare. Seleziona il tuo script. Vai avanti e scegli un evento, che attiverà il tuo script.

Una volta configurato, fai clic su Inserisci e poi Fatto. Questo menu è anche dove puoi modificare o eliminare qualsiasi script precedentemente configurato.

Se non vuoi legare il tuo script a un'azione, è ancora più semplice impostarlo. Vai a File > Script > Navigare. Passa al tuo script e quindi premi Apri. Il tuo script verrà eseguito immediatamente.

Se vuoi vedere il tuo script in questo menu di script, devi copiarlo nella cartella appropriata. Questo può essere trovato nel Presets > Script cartella della tua installazione di Photoshop.

Una volta copiato, riavvia Photoshop. Una volta riavviato, lo script sarà visibile come voce di menu in File > Script Menu.

Ridimensiona le immagini: rendila migliore

Ora che hai una comprensione di Photoshop Scripts, è il momento di migliorare il codice.

Questo codice funziona molto bene al ridimensionamento delle immagini 670 pixel (o qualsiasi dimensione lo hai cambiato), ma potrebbe essere migliore. Fortunatamente, JavaScript è un linguaggio molto flessibile!

Modifichiamo il codice in modo che nessuna immagine più piccola della nuova dimensione non venga ridimensionata. Ecco il codice:

current_document = app.activeDocument; new_width = 670; if (current_document.width> new_width) current_document.resizeImage (UnitValue (new_width, 'px'), null, null, ResampleMethod.BICUBIC); 

C'è solo un cambiamento qui. Un Se la dichiarazione è avvolta attorno al metodo di ridimensionamento. Se la larghezza del documento corrente (accessibile tramite current_document.width) è inferiore alla nuova larghezza, non ridimensionare.

Ciò garantisce che le immagini di piccole dimensioni non vengano ingrandite, il che ridurrebbe la qualità.

Quando inizi a digitare il codice nel toolkit, fornisce suggerimenti per le modifiche valide che puoi apportare, i metodi da chiamare o le proprietà per l'accesso. Questo è molto utile e dovresti trarne il massimo vantaggio!

Ecco una modifica finale:

current_document = app.activeDocument; // Ottieni il documento attivo new_width = 670; // new width to ressize to if (current_document.width> new_width) // se il documento è più grande della nuova dimensione current_document.resizeImage (UnitValue (new_width, 'px'), null, null, ResampleMethod.BICUBICSHARPER);  current_document.activeLayer.autoContrast (); // Applica il contrasto current_doc.activeLayer.applySharpen (); // Applica Contrasta

Questo codice ora contiene commenti, qualcosa che tutto il codice dovrebbe avere 10 Suggerimenti per scrivere Cleaner & Better Codice 10 Suggerimenti per scrivere Cleaner e Better Code Scrittura di codice pulito sembra più facile di quanto non sia in realtà, ma ne valgono i benefici. Ecco come iniziare a scrivere codice più pulito oggi. Per saperne di più, e che ti aiuterà in futuro.

Il metodo resample è cambiato in Bicubico più nitido - questo produce risultati leggermente migliori quando si effettua il downscaling delle immagini.

Infine, contrasto e nitidezza sono stati applicati come ultimo passaggio.

Cosa intendi?

Ormai dovresti sapere tutto ciò che ti serve per automatizzare nulla in Photoshop! Se riesci a farlo in Photoshop, puoi probabilmente automatizzarlo. L'API di Photoshop Quali sono le API e Come sono le API aperte Modifica di Internet Quali sono le API e Come sono le API aperte Modifica di Internet Ti sei mai chiesto come i programmi sul tuo computer e sui siti Web visitati "parlano" tra loro? Ulteriori informazioni consente di accedere a molte funzionalità e la relativa documentazione descrive quasi tutte le funzioni a cui è possibile accedere.

Naturalmente, gli esempi di oggi erano solo di base, ma coprono i dettagli principali: è possibile implementare uno script specifico per le proprie esigenze!

Hai imparato qualcosa di nuovo oggi? Quali sono le tue sceneggiature preferite? Fateci sapere nei commenti qui sotto!

Immagine di credito: whiteMocca tramite Shutterstock.com

Scopri di più su: Adobe Photoshop, Fotografia, Scripting.