Gli script in Photoshop – Hello World

gennaio
3

In questo breve articolo vedremo come photoshop non solo è un’ottimo programma di grafica, ma è anche un vera piattaforma gestibile mediante javascript.
Quello che faremo sarà un semplice “Hello World” all’interno di un documento.

CREAZIONE FILE JSX

Per prima cosa bisogna aprire la directory di PSD (Photoshop), solitamente in “C:\Programmi\Adobe\Adobe Photoshop XXX\Presets\Scripts” e creiamo un nuovo file denominato aaaTest.jsx (aaa perchè possa essere in cima all’elenco degli script 😉 ). Una volta creato il nostro file lo apriremo con il nostro editor javascript preferito (nel caso Adobe mette a disposizione uno strumento come il ExtendScript Toolkit). Un file Jsx non è altro che un file javascript, quindi siete anche liberi di dare come estensione js.

Premessa:Molte delle parti descritte nei prossimi passi faranno uso degli oggetti, sarà quindi necessaria una dimestichezza con “metodi” e “proprietà”, in oltra omettero alcune cose, solo perchè se volete all’interno della cartella di photoshop sono presenti le guide estese degli script.

Apriamo il nostro file e vediamo i passi che dovremo eseguire:

  1. Impostazione dei colori di primo e secondo piano
  2. Apertura di un nuovo documento e settaggio del suo nome
  3. creazione di una cartella contenente un livello vuoto
  4. trasformazione di un livello vuoto in un livello testo
  5. impostazione del livello testo e inserimento del nostro “Hello World”
  6. Creazione di un quadrato e la sua colorazione

Ed ecco lo script

//imposto i pixel come unità di misura
app.preferences.rulerUnits = Units.PIXELS
app.preferences.typeUnits = TypeUnits.PIXELS

//Colore Primo Piano
app.foregroundColor.rgb.hexValue="CC0000";
//Colore Secondo Piano
app.backgroundColor.rgb.hexValue="FFFFFF";

/*
Creo un nuovo documento in PSD (app è l'object photoshop)
Dimensioni:300x300
Nome:DocLucas
Base:RGB
Sfondo:Trasparente
*/
app.documents.add(300, 300, 72.0, "DocLucas",NewDocumentMode.RGB,DocumentFill.TRANSPARENT);
//Variabile = Documento
var docLuca=documents.getByName("DocLucas");

//Crea una cartella vuota
var folderLuca=docLuca.layerSets.add();
//crea un livello all'interno della cartella
folderLuca.artLayers.add();
//rinomino la cartella
folderLuca.name="MiaCartella";

/*
Trasformo il livello normale in testo, importante: DEVE ESSERE VUOTO
Quando abbiamo creato il documento, si è auto generato un livello vuoto che
nella collezzione dell'object artLayers è il primo artLayers[0]

NB:gli artLayer sono i livelli
*/
docLuca.artLayers[0].kind=LayerKind.TEXT;
docLuca.artLayers[0].textItem.font="Verdana";//font del testo
docLuca.artLayers[0].textItem.size=12;//dimensione testo
docLuca.artLayers[0].textItem.color=app.backgroundColor;//applico il colore al testo
docLuca.artLayers[0].textItem.contents="Hello World";//scritta nel testo

/*
Creo il quadrato
*/
h=0;
v=0;
//Creo una selezione quadrata, i punti seguono un senso orario.
regionLuca=Array(Array(h,v),Array(100,v),Array(100,100),Array(h,100));
docLuca.selection.select(regionLuca);

//coloro la selezione
docLuca.selection.fill(app.foregroundColor);

//Sposto il livello testo sopra quello del quadrato all'interno della cartella
docLuca.artLayers[0].move(folderLuca.artLayers[0],ElementPlacement.PLACEBEFORE);

AVVIO DEL NOSTRO SCRIPT

Bene, ora dobbiamo aprire il nostro PSD (se era aperto prima della creazione del file sappiate che dovete chiudere e riaprire PSD), poi accediamo al menù file->script e avviamo il nostro script aaaTest.

Scarica il nostro esempio jsx

Vuoi lasciare un tuo commento?

Attenzione: L'approvazione e l'invio del commento potrebbero avere dei ritardi, quindi, dopo aver premuto il pulante "Invia Commento" attendi.


*