【问题标题】:Extendscript - Adobe Illustrator - Ellipse not in right locationExtendscript - Adob​​e Illustrator - 椭圆不在正确的位置
【发布时间】:2022-01-20 03:05:13
【问题描述】:

我正在尝试做一些看似简单的事情,但不确定它是如何不起作用的。我有一个地图层,我正在尝试通过 Extendscript 绘制圆圈。我试图通过尝试在点 100,100 处绘制一个简单的圆圈来进行测试(我假设地图的左上角是 0,0),但是当我执行它时,圆圈看起来比它应该的位置更远(似乎接近200,700)。下面是我正在使用的代码...

var dotRadius = 8.136 / 2;
var testDOT = mapLayer.pathItems.ellipse(100, 100, dotRadius*2, dotRadius*2, false, false);
testDOT.strokeWidth = 0.25;
testDOT.strokeColor = getColor("MAROON"); // defined above
testDOT.fillColor = getColor("MAROON");

getColor 只是创建了一个 CYMK Color 对象。谁能告诉我为什么 100,100 点不是我预期的位置?

TIA!

【问题讨论】:

  • 截图不会有什么坏处。与统治者。
  • link 这是截图...我更改了标尺以显示点
  • 您能否在窗口的左上角单击两次(以重置零点)并在“变换”面板中显示坐标的样子? imgur.com/4gz8hAr.png
  • 我双击了,但它似乎没有做任何事情。这是转换截图link
  • 另外,仅供参考,我的脚本会加载一个模板,然后添加 DOT.... 是否有脚本方法可以“重置零点”?

标签: javascript adobe-illustrator extendscript


【解决方案1】:

以防万一,您的脚本似乎使用了“相对”坐标系(相对于当前画板的零点)。

要使其使用“绝对”坐标(相对于新文档的第一个画板的左上角),您可以在脚本开头添加以下行:

app.coordinateSystem = CoordinateSystem.DOCUMENTCOORDINATESYSTEM;

或者您可以使用“相对”坐标系:

app.coordinateSystem = CoordinateSystem.ARTBOARDCOORDINATESYSTEM;

在这种情况下,您可以使用以下命令移动任何画板的零点:

var doc = app.activeDocument;
doc.artboards[0].rulerOrigin = [0,0];
doc.artboards[1].rulerOrigin = [200,700];
// etc

【讨论】:

  • 再次感谢您....在移动了那个零点之后,一切都被放在了正确的位置。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-12
  • 2021-04-09
  • 1970-01-01
  • 2019-10-21
相关资源
最近更新 更多