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

如何为Adobe Illustrator中JS创建的矩形指定Color Swatch/Spot Color并设置填充tint

如何为Adobe Illustrator中JS创建的矩形指定Color Swatch/Spot Color并设置填充tint

没问题,我来一步步帮你搞定这个需求~ 你已经用代码创建好矩形了,接下来只需要几个关键步骤就能给它指定目标专色色板并设置填充tint:

1. 先获取目标专色色板

首先你需要从文档的色板集合里找到名为My_Color_01的色板,AI的脚本API提供了直接通过名称获取色板的方法,非常方便:

var mySwatch = app.activeDocument.swatches.getByName("My_Color_01");

注意:色板名称是区分大小写的,一定要和你AI里的色板名称完全匹配,不然会报错哦。如果担心色板不存在导致脚本崩溃,可以加个简单的异常捕获:

var mySwatch;
try {
  mySwatch = app.activeDocument.swatches.getByName("My_Color_01");
} catch(e) {
  alert("找不到名为My_Color_01的色板,请检查名称是否正确!");
}

2. 启用矩形填充并关联色板

接下来要确保你的矩形是启用填充状态,然后把填充颜色设置为刚才获取的专色色板:

// 启用矩形的填充属性
MyRect.filled = true;
// 将填充颜色关联到目标专色色板
MyRect.fillColor = mySwatch.color;

3. 设置填充的tint值

专色的tint值范围是0到100(对应0%到100%的浓度),直接修改填充颜色的tint属性即可:

// 这里设置为50%的tint,你可以根据需求改成0-100之间的任意数值
MyRect.fillColor.tint = 50;

完整整合代码

把这些步骤和你原来的创建矩形代码整合到一起,就是完整的可运行脚本了:

// 你原来创建矩形的代码
var MyRect = artLayer.pathItems.rectangle(12, 22, 180, 180);

// 获取目标专色色板
var mySwatch;
try {
  mySwatch = app.activeDocument.swatches.getByName("My_Color_01");
} catch(e) {
  alert("找不到名为My_Color_01的色板,请检查名称是否正确!");
}

// 配置填充及tint
if (mySwatch) {
  MyRect.filled = true;
  MyRect.fillColor = mySwatch.color;
  MyRect.fillColor.tint = 50; // 自定义tint数值
}

最后再提个小提醒:只有当填充颜色是**专色(SpotColor)**的时候,tint属性才会生效,如果是普通的印刷色(CMYK/RGB等),设置tint是没有效果的哦。

备注:内容来源于stack exchange,提问作者Penumbra

火山引擎 最新活动