Newsgroup: it.comp.grafica.photoshop
Titolo: Automatismo complesso

Ciao a tutti,
uso photoshop 7, ho un file psd con una cinquantina di layer, e dovrei
trovare un modo automatizzato per far si che vengano esportati come bmp nel
seguente modo:
layer 1 + layer di fondo -> (offset+1).bmp
layer 2 + layer di fondo -> (offset+2).bmp
layer 3 + layer di fondo -> (offset+3).bmp
...
layer n + layer di fondo -> (offset+n).bmp
Quindi l'automatismo dovrebbe prelevare un layer e quello di sfondo
(l'ultimo layer) ed esportarlo come appunto un bitmap con nome numerico,
possibilmente con la possibilità di impostare un offset (ossia se voglio
chiamare il primo file 1451.bmp, imposto l'offset a 1450)
Chi mi sa dire come posso fare tutto questo? Dove posso scrivere tale
script? che linguaggio devo usare?
Grazie per le risposte :)

 script? che linguaggio devo usare?
Puoi scrivere in AppleScript, JavaScript, VBScript. Nel cd di ps trovi le
specifiche e documentazioni sui linguaggi, nonchè le funzioni ed un
"prontuario" degli oggetti etc...
ciao
--
ApWizard
http://www.apwizard.altervista.org


grazie mille dell'inidizio, sto già facendo le prime sperimentazioni ^_^
Sono quasi in grado di fare quello che mi serve, l'unica cosa che non riesco
a capire come scriptare, è la visibilità o meno del layer selezionato...
quale è la proprietà del layer su cui lavorare?

 quale è la proprietà del layer su cui lavorare?
Sinceramente non ne ho la più pallida idea >_<, so che si può fare ma non ho
mai "scriptato" in ps, che linguaggio usi? come ti trovi? in cosa sviluppi?
(nel senso, se usi vbscript, io ho provato a scriptare dall'editor vb di
excel (e pare funzionare), tu cosa usi?).
Questa cosa mi piace parecchio ^_^.
--
ApWizard
http://www.apwizard.altervista.org

 Questa cosa mi piace parecchio ^_^.
Ho risolto tutto :D
Fortunatamente la mia (autodidatta) esperienza nella programmazione ha
compensato il mio semi-niubbismo nella grafica :P
Ho usato javascript, benchè sia il linguaggio che conosco meno :P ma per
fare certe cose mi trovo meglio con liguaggi java-like, mentre con altre mi
trovo meglio in vba (ho fatto certi fogli excel che l'unica cosa che gli
manca per chiamarli "programmi" è l'exe indipendente da excel :P)
Cmq, per ringraziare la community dei consigli, pubblico qui sotto lo
script, così nel caso serva a qualcun altro, potrà tornare utile ^_^
Il codice in pratica prende n layers, partendo dal 16° (a me serviva così) e
li salva con il layer di sfondo comune (il quint'ultimo) in tanti bmp
separati. I nomi dei file mi servivano numerati con un codice a 4 cifre che
parte da 8850, per cui ecco spiegata quella costante :)
---------------------------------------------------
displayDialogs = DialogModes.NO;
saveOptions = new BMPSaveOptions();
 saveOptions.depth = 24;
if ((documents.length != 0) && (activeDocument.saved)){
  var AD = activeDocument;
  var CurrentFolder = AD.path;
  var newFolder = AD.name+"_separati";
  var tempFolder = new Folder (CurrentFolder+"/"+newFolder);
  tempFolder.create();
  var tempLayer = AD.artLayers.add();
  var checkArray = new Array(AD.layers.length);
  for(a=1;a<=AD.layers.length;a++){
    AD.layers[a-1].visible = 0;
  }
    AD.layers[AD.layers.length-1].visible = 1;
  for(a=16;a<=(AD.layers.length-5);a++){
    AD.layers[a-2].visible = 0;
    AD.layers[a-1].visible = 1;
      newFile = new
File(tempFolder+"/"+(a-16+8850)+"-"+AD.layers[a-1].name+".bmp");
      AD.saveAs (newFile,saveOptions, true, Extension.LOWERCASE);
   }
   AD.layers[0].remove();
}else{
  alert("Idiota non hai salvato!");
}

, 
m...@somewhere.it
 
says...
Complimenti! :)
Per curiosità dove si trovano i comandi di photoshop?
Quelli tipo "new.layer.."
-- 
.. [SHiV] ..

Quelli tipo "new.layer.."
E' tutto spiegato nei reference file che trovi sui cd.


 manca per chiamarli "programmi" è l'exe indipendente da excel :P)
Eheheh per questo ti chiedevo che linguaggio usi...pure io da autodidatta
programmo in vb su excel, e funziona pure con ps (scrivi lo script in un
foglio di excel ^_^ e agisce su ps).
Appena ho un po' di tempo sperimento qualcosa. 8-]
