Неправильное сохранение имени в путь activeDocument - PullRequest
0 голосов
/ 12 июня 2019

У меня есть этот скрипт, который сохраняет .tif к пути, из которого открыт PSD. Проблема в том, что я не могу на всю жизнь заставить его сохранить файл с конкретным именем. Он всегда сохраняет его как имя документа PSD.

Пожалуйста, помогите, это сводит меня с ума. (пытается сохранить файл как «FOP»)

PIA = app.activeDocument.layerSets.getByName("PIA");
FOP= PIA.layerSets.getByName("FOP");
FOP.visible = true;

var idsave = charIDToTypeID( "save" );
    var desc255 = new ActionDescriptor();
    var idAs = charIDToTypeID( "As  " );
        var desc256 = new ActionDescriptor();
        var idBytO = charIDToTypeID( "BytO" );
        var idPltf = charIDToTypeID( "Pltf" );
        var idIBMP = charIDToTypeID( "IBMP" );
        desc256.putEnumerated( idBytO, idPltf, idIBMP );
        var idLZWC = charIDToTypeID( "LZWC" );
        desc256.putBoolean( idLZWC, true );
        var idsaveTransparency = stringIDToTypeID( "saveTransparency" );
        desc256.putBoolean( idsaveTransparency, true );
    var idTIFF = charIDToTypeID( "TIFF" );
    desc255.putObject( idAs, idTIFF, desc256 );
    var idIn = charIDToTypeID( "In  " );
    desc255.putPath( idIn, activeDocument.path, new File("FOP"));
    var idDocI = charIDToTypeID( "DocI" );
    desc255.putInteger( idDocI, 456 );
    var idLyrs = charIDToTypeID( "Lyrs" );
    desc255.putBoolean( idLyrs, false );
    var idsaveStage = stringIDToTypeID( "saveStage" );
    var idsaveStageType = stringIDToTypeID( "saveStageType" );
    var idsaveBegin = stringIDToTypeID( "saveBegin" );
    desc255.putEnumerated( idsaveStage, idsaveStageType, idsaveBegin );
executeAction( idsave, desc255, DialogModes.NO );

1 Ответ

1 голос
/ 14 июня 2019

И это похоже на ваш другой вопрос: putPath требуется только два аргумента, поэтому он игнорирует new File("FOP"), который вы ему подаете. Эта строка должна выглядеть так:

desc255.putPath( idIn, new File(activeDocument.path + "/FOP.tif"));

Также обратите внимание на / перед именем файла: activeDocument.path дает вам путь без последней косой черты.

...