javascript - Photoshop 脚本数组到 json
问题描述
我想获取 json 文档中的所有图层。这是我的代码:
#include json2.js
var doc = app.activeDocument;
var allLayers = [];
var allLayers = collectAllLayers(doc, allLayers);
function collectAllLayers (doc, allLayers){
for (var m = 0; m < doc.layers.length; m++){
var theLayer = doc.layers[m];
if (theLayer.typename === "ArtLayer"){
allLayers.push(theLayer);
}else{
collectAllLayers(theLayer, allLayers);
}
}
return allLayers;
}
var json = JSON.stringify(allLayers);
alert(json);
我的努力var json = JSON.stringify(allLayers);
没有用。我想allLayers
改成json。感谢您提前帮助解答!
解决方案
JSON 不支持 Photoshop 使用的某些类型(File
例如),因此 JSON 化某些 Photoshop DOM 对象将不起作用。您需要修改json2.js
或创建自己的解析器,该解析器将创建一个 jsonable 对象。
推荐阅读
- azure - 使用 Spring Boot 在 azure 中从 v8 升级到 v12 java sdk 后无法连接到 azure-blob-storage
- google-apps-script - 查询未提取完整数据
- python - 在scrapy spider中运行的问题
- html - 如果输入为空,如何隐藏表格行?
- android - 如何检查 android 映像(boot.img、system.img 等)是否已签名?
- java - 动物园管理员旧活动接待
- powershell - 如何获取传递给 PowerShell 中函数的 Hashtable 对象的键名?
- kubernetes - 无法使用 StorageClass“rook-cephfs”配置卷:rpc 错误:代码 = 已中止 desc = 具有给定卷 ID pvc- 的操作已存在
- jquery - 如何将附加变量放在 URL 中
- nginx - 为什么我的网站重定向到我在同一个 vps 中的另一个网站?