Come creare un processo batch, numerando le immagini (scrivendo il testo su di esse) da 1 a 100 in Photoshop?


25

Cercando di creare 100 immagini su cui verrebbero scritti i loro numeri appropriati.

Dato che molto probabilmente apporterò modifiche al modello in futuro, ho pensato che sarebbe stato meglio automatizzarlo in qualche modo.

C'è una soluzione semplice a questo problema?

Risposte:


23

Dipende da come definisci "semplice". Photoshop ha funzionalità di dati variabili incorporate, ma non è terribilmente ben documentato ed è considerato un argomento inappropriato per conversazioni educate, come ad esempio cocktail party o social della chiesa. D'altra parte, sono anni che non lo uso, quindi la costruzione di questo tutorial è stata un buon aggiornamento.

Avrai bisogno di un file delimitato da virgole o da tabulazione con un nome per ogni variabile (userò "Image" e "ImageNumber"). Ecco quello che ho preso in giro per questo esercizio. Si noti che i nomi dei file di immagini non hanno percorso solo perché si trovano nella stessa cartella del file di dati. È possibile utilizzare percorsi relativi o assoluti per i nomi dei file:

file di dati

Devi impostare il tuo modello. Supponiamo che siano necessari due livelli: l'immagine (variabile) e il numero (un livello di testo, variabile). Il livello dell'immagine deve essere un livello reale, non lo sfondo.

templage di Photoshop base strati

Una volta configurate queste impostazioni, seleziona il livello dell'immagine e sotto Image > Variables > Definevisualizzerai questa finestra di dialogo (ho selezionato la casella di controllo "Sostituzione pixel", poiché è quello che dobbiamo usare):

definire la variabile dell'immagine

Modificare il campo "Nome" sul nome della variabile scelta ("Immagine") e impostare il "Metodo" su ciò che è necessario. Sto scegliendo "Riempi", che ridimensionerà l'immagine in modo proporzionale, ma potresti preferire qualcos'altro. Le informazioni su ciascun metodo vengono visualizzate nel campo Descrizione quando si passa con il mouse sul nome. Chiudi la finestra di dialogo.

Selezioniamo il livello di testo e ripetiamo il processo, denominando la variabile di testo "ImageNumber".

definire la variabile di testo

Ora dobbiamo definire un set di dati, quindi fai clic sul pulsante "Avanti" nella finestra di dialogo e fai clic sull'icona Nuovo set di dati (proprio accanto al cestino) nella finestra di dialogo.

Finestra di dialogo Set di dati

Un set di dati è una raccolta di valori che si applicano a un particolare documento di output, non un set completo di valori in un file delimitato da virgole, quindi ora definiamo un'immagine iniziale per il nostro modello facendo clic su "Seleziona file ..." con la variabile di immagine selezionata. Ho scelto l'immagine del crisantemo. Assicurarsi che "Non sostituire" NON sia selezionato.

valore dell'immagine selezionato

Ora dobbiamo importare i set di dati dal nostro file delimitato da virgole usando la finestra di dialogo "Importa".

finestra di dialogo di importazione

Esausto ancora? -- C'è più. Fare clic su OK per chiudere la finestra di dialogo Variabili.

Il passaggio finale è scegliere File > Export > Data Sets as Files...e scegliere un luogo in cui salvare l'output, insieme alla scelta della convenzione di denominazione.

finestra di dialogo di esportazione

Quando si fa clic su OK, l'intero set di file psd verrà esportato nella posizione scelta.


Ho seguito questo ok fino a un certo punto, ma ora sono bloccato. Quando vengo ad esportare i miei file ho bisogno che ognuno abbia il valore di una delle variabili ad esso associate. Sembra che mi permetta di usare solo un'opzione limitata con un numero sequenziale, il che non va bene per quello che devo fare. Qualsiasi consiglio sarebbe apprezzato sia usando CS5 o altri.

Fantastico! Mi hai risparmiato ore di lavoro, grazie, Alan.
Morgan,

6

Sì, è possibile automatizzare. Apri Extend Script toolkit. Scrivi

#target Photoshop
alert("Hello "+app.activeDocument.name+"!")

Salvare lo script ed eseguirlo, ora dovrebbe vedere una finestra di avviso a condizione che PS sia aperto e abbia un documento. È solo javascript che puoi trovare il manuale di riferimento:

Ecco come modificare il testo in un livello di testo e salvarlo (aggiungendo il bit di salvataggio perché è un po 'complicato):

#target Photoshop

var textlayer = app.activeDocument.layers.getByName('Text');
textlayer.textItem.contents = 'foo';

var exportOptionsSaveForWeb = new ExportOptionsSaveForWeb();
exportOptionsSaveForWeb.format = SaveDocumentType.PNG;

var saveFile = new File("file:///c:/temp/test.png");
app.activeDocument.exportDocument(saveFile, ExportType.SAVEFORWEB, exportOptionsSaveForWeb);

In modo che non farò tutto il lavoro per te, devi comunque mettere un ciclo for attorno al codice pubblicato.


Copia e incolla questo nella domanda esistente per favore
Ryan

4

Questa è una soluzione per un problema descritto in Automatizza la creazione di immagini con l'aggiunta di un numero, che aumenta con ogni iterazione

Sì, è un po 'simile, ma al posto della domanda attuale la strega è many -> manymia one -> manye ha una soluzione un po' diversa e più rapida.

Eccolo:

  1. TypeHo aperto un'immagine, aggiunto un livello con tutto lo stile che volevo.
  2. Poi sono andato a

    Image > Variables > Define
  3. Imposta Layer:il nome del mio livello di testo, attiva la casella di controllo Text Replacemente assegna alla Text Replacementvariabile alcuni Name:(l'ho chiamato number). E premuto OK .

  4. Ho aperto alcuni editor di fogli di calcolo come Excel, Numbers, Google Docs, ecc ... e ho inserito le cose successive nella prima colonna:

    1. In prima fila ho scritto il nome della mia variabile (per me - number).
    2. Nel seguito (la seconda riga) sono entrato 1. A volte affinché il passaggio 3 funzioni, è necessario inserire 2una terza riga.
    3. Ora usando il foglio di calcolo automatico standard prendi l'angolo in basso a destra di una cella con 1 (o 2) al suo interno e trascina verso il basso. In questo modo tutte le celle sottostanti dovrebbero essere riempite con un numero progressivo (ho generato una sequenza fino a 99).
    4. Ok, tutto ciò che devi fare ora è esportare il tuo foglio di calcolo CSV.
  5. Ora dovresti andare a

      Image > Variables > Data Sets

    seleziona Import…sfoglia il tuo CSVfile e fai clic su OK . Puoi anche controllare il Previewpulsante per vedere come apparirà la tua immagine con un determinato set di dati (numero). Ancora una volta fare clic su OK per salvare i set di dati.

  6. Infine, per ottenere tutti i file con cose diverse, vai a

    File > Export > Data Sets as Files

    Seleziona la cartella di destinazione e assicurati di aver All Data Setsselezionato l'opzione, in quanto ciò genererà un file per ciascuno dei set di dati, esattamente ciò di cui abbiamo bisogno. Nella stessa finestra puoi anche scegliere un'opzione di denominazione per i file esportati. E fai clic su OK :)

  7. Questo genererà un psdfile, quindi dovrai convertirli in qualche modo in qualcosa di più semplice. Questo può essere ottenuto con

    File > Scripts > Image Processor

    Questo script ti permetterà di convertire molte psdimmagini in JPEGcon un clic di un pulsante.

Inoltre potresti essere interessato al prossimo tutorial sulle variabili di Photoshop: http://layersmagazine.com/photoshop-variables.html


Grazie per questa parte: "Questo script ti permetterà di convertire molte immagini psd in JPEG con un clic di un pulsante." graphicdesign.stackexchange.com/a/4874/45239 e la tua frase sono stati di grande aiuto.
Ryan,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.