如何在Illustrator CS5.1 +中创建画板对象的add方法所需的Rectangle对象?

Luk*_*ela 3 javascript adobe-illustrator

我试图在java脚本的帮助下添加新的画板.我无法找到解决方案.adobe的脚本编写指南很差(不要使用更强的单词).

什么我正在尝试它返回错误:

错误1242:非法参数 - 参数1 - 预期的矩形值

当我使用artboard.artboardRect其他画板的价值然后它在同一个地方创建画板但我无法修改它(调整大小),这使得这个选项无用.

artboards.add(artboards[0].artboardRect);//works
artboards.add([0,0,200,50]);//Error 1200: an Illustrator error coccurred: 1346458189('PARAM')
var rect = artboards[0].artboardRect;
rect[0] = 0;
rect[1] = 0;
rect[2] = 200;
rect[3] = 50;
artboards.add(rect);//Error 1242: Illegal argument - argument 1 - Rectangle value expected
Run Code Online (Sandbox Code Playgroud)

Luk*_*ela 6

经过广泛搜索后我发现了这个解决方法:

var newRect = function(x, y, width, height) {
    var l = 0;
    var t = 1;
    var r = 2;
    var b = 3;

    var rect = [];

    rect[l] = x;
    rect[t] = -y;
    rect[r] = width + x;
    rect[b] = -(height - rect[t]);

    return rect;
};

artboard = artboards.add(artboards[0].artboardRect);
artboard.name = "new name";
artboard.artboardRect = newRect(0, 0, 200, 50);
Run Code Online (Sandbox Code Playgroud)

  • Adobe的文档很垃圾。这应该是一个本机方法。感谢您提供这个。 (3认同)