You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Photoshop JS脚本:从JSON导入矢量蒙版时pathItems.add()报错

Photoshop脚本调用pathItems.add()时出现“属性未初始化”错误

问题详情

为深度学习图像训练在Photoshop中制作了大量矢量蒙版,为节省空间删除了带标注的PS图像,仅将矢量蒙版的点位置及所属图层信息保存至JSON文件。现在需要重建标注图像用于校验和展示,但执行doc.pathItems.add(name, spiArray)时出现“属性未初始化”错误:

  • 错误代码位于utils.jsaddPathItem()函数倒数第4行,调用自main.js最后一行
  • 已查阅2020 Adobe脚本指南,确认pathItems存在.add()方法
  • 已验证docdoc.pathItems已正确初始化,name为字符串,spiArray为包含SubPathInfo对象的数组
  • 可提供示例JSON和PNG文件

排查修复方向

  • 检查SubPathInfo对象完整性
    每个SubPathInfo必须完整设置所有必要属性,包括closed(布尔值)、operation(路径运算类型,如PathOperation.SHAPEADD)、entireSubPath(包含PathPointInfo对象的数组),缺省或错误类型的属性会触发报错。
  • 验证PathPointInfo属性合法性
    每个路径点的kind(如PointKind.CORNERPOINT)、anchor(坐标数组,如[x,y])、leftDirectionrightDirection必须全部赋值,不能存在undefined或非法数值。
  • 确认文档状态
    检查目标文档doc是否为可编辑的普通PSD格式,排除智能对象、索引模式、锁定文档等不支持路径操作的情况。
  • 简化测试用例
    用仅包含1个闭合路径、3个边角点的极简spiArray测试pathItems.add(),排除复杂路径数据的干扰,验证基础调用逻辑是否正常。
  • 检查数组结构
    确认spiArray是直接包含SubPathInfo对象的一维数组,避免嵌套数组或其他异常结构。

内容的提问来源于stack exchange,提问作者Amy

火山引擎 最新活动