如何使用CEP/JavaScript/ExtendScript在InDesign图层中绘制形状
InDesign 指定图层添加形状解决方案
InDesign 原生 API 内置了基础几何形状的创建接口,无需像 Photoshop 那样手动构造路径点,可直接调用对应方法完成需求。
可直接运行的示例代码(添加圆形)
// 获取当前激活文档 const doc = app.activeDocument; // 替换为你预先创建的目标图层名称,若创建图层时已持有图层对象可直接使用 const targetLayer = doc.layers.itemByName("你的预创建图层名称"); // 在指定图层添加正圆形 // 第四个参数为形状边界:[左边界坐标, 上边界坐标, 右边界坐标, 下边界坐标],单位跟随文档默认单位 const circle = doc.ovals.add( targetLayer, undefined, undefined, [50, 200, 150, 100] ); // 可选配置:设置形状样式 circle.fillColor = doc.swatches.itemByName("无"); // 无填充 circle.strokeColor = doc.swatches.itemByName("黑色"); // 黑色描边 circle.strokeWeight = 1; // 描边粗细1pt
其他常用形状创建说明
替换代码中ovals.add即可实现不同形状的创建:
- 矩形:
rectangles.add() - 多边形:
polygons.add() - 直线:
lines.add()
边界坐标参数的差值决定形状大小,若要创建正圆形,保证左右边界差值等于上下边界差值即可。
内容的提问来源于stack exchange,提问作者Fitspade
相关产品推荐
相关产品推荐

