Я не уверен, что все, что вы можете сделать в среде браузеров, означает все, что вы можете сделать в среде фотошоп. Но вы должны посмотреть на несколько вещей.
Ведение в браузере
File
объект.
https://developer.mozilla.org/en-US/docs/Web/API/File
Примечательным, что он расширяет Blob
объект.
https://developer.mozilla.org/en-US/docs/Web/API/Blob
Что, если вы исследовали, вы найдете его можно прочитать с помощью FileReader
.
https://developer.mozilla.org/en-US/docs/Web/API/FileReader
Так это будет работать в браузере, но может/не-работать в наборе Photoshop сценариев.
function get_file(){
var app_path = app.activeDocument.path,
file = new File(app_path + '/test.json');
var reader = new FileReader();
reader.onloadend = function() {
console.log(reader.result);
}
reader.readAsText(file);
}
Это асинхронно, поэтому вам может потребоваться обратный вызов в зависимости от того, что вы пытаетесь сделать с этим. Вы не сможете вернуть строку из события reader.onloadend
.
делать это в Photoshop
Посмотрите на своих ссылок сценариев. В частности, ссылка на javascript.
Все ресурсы: http://www.adobe.com/devnet/photoshop/scripting.html
Javascript PDF: http://wwwimages.adobe.com/content/dam/Adobe/en/devnet/photoshop/pdfs/photoshop-cc-javascript-ref-2015.pdf
Похоже, что они не имеют FileReader
, но вместо того, чтобы объект File
может быть использован для чтения контента. API File
начинается на стр. 109, но он пуст! Документация немного жалкая, поэтому я могу понять, почему вам не удастся найти это. С некоторых поисков я нашел кто-то делает это в 2012 году (но я не знаю, если он все равно будет работы- стоит выстрел)
var b = new File("c:\test.txt");
b.open('r');
var str = "";
while(!b.eof) {
str += b.readln();
}
b.close();
alert(str);
Позвольте мне знать, если это работает.
в узле или какой-либо другой среде JS? –
@ DanielA.White нет, я использую чистый Javascript – gespinha
, что не означает ничего - вы имеете в виду в браузере? –