Работает, если импортирован в photoshop как скрипт, но не загружен через расширение

Создание панели HTML5 в Photoshop, которая использует списки имен файлов из некоторого каталога на моем компьютере.

Вот код javascript (упрощенный для понимания сути), который отлично работает, если File>Scripts>Browse в photoshop, но не работает в расширении:

var targetDirectory = ** some location **;

getNamesOfFileFromDirectory(targetDirectory);

function getNamesOfFileFromDirectory(targetDirectory){
        try {
            var directory = Folder(targetDirectory);
            var fileList = directory.getFiles();

            alert(fileList[0]);

        } catch(err){
            alert(err);
        }
    }

после некоторых тестов я нахожу:

var directory = Folder(targetDirectory);

вызывает проблему. потому что папка не определена, если используется внутри расширения, но так как она работает нормально, если загружена как скрипт, я думаю, что мне просто не хватает какой-то библиотеки, которая была у фотошопа по умолчанию.

Можете ли вы, ребята, помочь мне и указать правильное направление, как решить эту проблему? Например, есть ли какая-нибудь библиотека, которую я могу скачать, или альтернативные способы, которыми я могу воспользоваться

Моя главная цель - получить список файлов из определенного каталога через расширение в фотошопе.

1 ответ

Photoshop поддерживает несколько сред для построения расширений. Если вы используете Adobe CEP в Photoshop, вы можете использовать следующий API:

window.cep.fs.readdir(FolderPath);

Вы можете найти пример по адресу https://github.com/Adobe-CEP/CEP-Resources/blob/master/CEP_7.x/Samples/CEP_HTML_Test_Extension-7.0/html/NativeFunction.html

Другие вопросы по тегам