javascript - 绘制星爆 - basil.js

标签 javascript adobe-indesign basil.js

我试图通过首先绘制多边形然后调整其属性来绘制星爆。

在 indesignjs.de 上,它说多边形是除矩形、椭圆形或图形线之外的任何形状。添加多边形时,InDesign 会根据当前多边形首选项设置创建正多边形。但我怎么也想不出如何画出这个该死的东西。

我写的是:

    var myPolygon = polygon(0, 0, 10, 10);
    property(myPolygon, "numberOfSides", 8);
    property(myPolygon, "insetPercentage", 50);

但我在 indesign 中收到错误,指出多边形不是函数。是否像矩形(即多边形)一样被 chop ?

最佳答案

正如 fabianmoronzirfas 指出的那样,polygon() 不是 basil.js 函数(与 rect() 相反)。因此,要么您必须使用如下所示的 basil 命令自己绘制形状:

beginShape();
  vertex(23, 45);
  vertex(34, 67);
  // draw as many vertices as you need
endShape(CLOSED);

否则您将必须使用正确的(非 basil)InDesign 脚本命令来塑造多边形。您想要实现的事情可以通过使用 convertShape() 方法来完成,该方法可以在任何形状上使用,因此您可以先创建一个矩形,然后在该矩形上使用此方法:

// @include ~/Documents/basiljs/basil.js;

function draw() {

  var myPoly = rect(50, 50, 200, 200);
  myPoly.convertShape(ConvertShapeOptions.CONVERT_TO_POLYGON, 8, 50);

}

关于javascript - 绘制星爆 - basil.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60953548/

相关文章:

javascript - 为什么 Or 不能在 angularJs ng-pattern 中工作?

javascript - 如何在同一个应用程序中使用 2 个具有不同 baseURL 的 Axios 实例 (vue.js)

command-line - 如何从命令行执行InDesign扩展脚本?

javascript - Indesign 脚本更新窗口?

javascript - 获取对象的所有方法和属性

javascript - div在javascript中滚动到

javascript - RequireJS - 从页面内部看不到变量

Adobe InDesign .jsx 脚本执行 .jsx 脚本

javascript - 使用 basiljs 交换项目

javascript - 如何将 .txt 字符串转换为 basil.js 中的变量?