Problema migrazione Script Java da MacOSX a Windows

di il
2 risposte

Problema migrazione Script Java da MacOSX a Windows

Buongiorno a tutti.

Vi scrivo chiedendovi una mano su un problema di uso di uno Script applicato all' applicazione Photoshop per MAcOSX.
Dai prossimo giorni dovrò utilizzare un PC , non riesco a modificare tale script per renderlo operativo su piattaforma Windows.

Mi da errore già nella linea 6, quella della cartella di destinazione.

Vi incollo il codice, se potete darmi qualche indicazione sulle modifiche necessarie per farlo funzionare ve ne sarei grato!

Il problema è solamente nelle directory od anche nel codice che non è scritto correttamente per Windows?

Grazie!


// Set Units to Pixel
app.preferences.rulerUnits = Units.PIXELS;
var doc = activeDocument;

// Create Folders
var exportDir = new Folder('~/Documents/export');
var highDir = new Folder(exportDir + '/high/');
var lowDir = new Folder(exportDir + '/low/');
var psdDir = new Folder(exportDir + '/psd/');

if(!exportDir.exists) exportDir.create();
if(!highDir.exists) highDir.create();
if(!lowDir.exists) lowDir.create();
if(!psdDir.exists) psdDir.create();

// Save JPG
function saveJPG() {
    // JPG Setting
    var jpgOpts = new JPEGSaveOptions();
    jpgOpts.quality = 12;
    jpgOpts.embedProfileColor= false;
    jpgOpts.matte = MatteType.NONE;

    // Save High 
    var HighFile = new File(highDir + '/' + doc.name.replace('.psd', '') + ".jpg")
    doc.saveAs(HighFile, jpgOpts, true, Extension.LOWERCASE); 

    // Resize
    var orientation = (doc.width > doc.height) ? 'landscape' : 'portrait';
    if(orientation === 'landscape') {
        doc.resizeImage(UnitValue(1700,"px"),null,72,ResampleMethod.BICUBIC);
    } else {
        doc.resizeImage(UnitValue(800,"px"),null,72,ResampleMethod.BICUBIC);
    }

    // Save Low
    var lowFile = new File(lowDir + '/' + doc.name.replace('.psd', '') + ".jpg")
    doc.saveAs(lowFile, jpgOpts, true, Extension.LOWERCASE); 
}

// Flatten PSD
function flatImageAndSave() {
    doc.flatten();
    var psdSaveOpts = new PhotoshopSaveOptions();
    psdSaveOpts.embedProfileColor = true;
    var filePSD = new File(psdDir + '/' +doc.name);
    //doc.saveAs(filePSD, psdSaveOpts, true, Extension.LOWERCASE)
}

flatImageAndSave(doc)
saveJPG();

2 Risposte

  • Re: Problema migrazione Script Java da MacOSX a Windows

    Ezio ha scritto:


    Vi scrivo chiedendovi una mano su un problema di uso di uno Script applicato all' applicazione Photoshop per MAcOSX.
    Dai prossimo giorni dovrò utilizzare un PC , non riesco a modificare tale script per renderlo operativo su piattaforma Windows.

    Mi da errore già nella linea 6, quella della cartella di destinazione.
    Innanzitutto il codice che hai postato è Javascript ... non Java. Sono due cose ben diverse.

    Riguardo quel Folder:

    new Folder('~/Documents/export')

    c'è una cosa da tenere presente, in generale. Sugli Unix-like (Mac OS X compresi) la tilde "~" nella shell si "espande" nella home directory dell'utente.
    Sui sistemi Windows la tilde nei path non vuol dire nulla di speciale.

    Quindi: quell'oggetto Folder è in grado di espandere la tilde (nella home directory) ANCHE sui sistemi Windows? E chi lo sa ..... Bisognerebbe leggere la documentazione di questa API specifica di Photoshop.
  • Re: Problema migrazione Script Java da MacOSX a Windows

    Ciao Andbin!

    Grazie per aver precisato il codice di programmazione, faccio ancora confusione!
    Ti ringrazio per la risposta ma sono riuscito a risolvere già la questione!
    Ho modificato le directory ed altri valori e sono riuscito a farlo funzionare!

    Chiedo quindi ad un amministratore di chiudere il thread.

    Buona serata a tutti!
Devi accedere o registrarti per scrivere nel forum
2 risposte