Adobe Illustrator 如何计算路径总长度?

作者&投稿:貂邰 (若有异议请与网页底部的电邮联系)
adobe illustrator 如何连接路径?闭合路径?如何让多个路径成为一条?~

1、在Illustrator的使用中,我们会在修改和编辑路径时会遇到一些间断的路径区域。我们如果要想将其连接时那么就要用到一些工具了;

2、我们先是要选择好所要编辑的图形,这样才好进行工具的使用;创建图形画笔,选中画的那个五角星形,把它拖到画笔面板里,弹出新建画笔对话框,选创建“散点画笔”,里面可设置。

3、之后我们打开里面的直接选择工具,我们这里要对单独的路径点进行选择;

4、我们打开直接选择工具后直接的点击断层的两个区域点;沿路径排列,画个圆形或其他曲线路径,点选中,再点击一下自己创建的画笔,就可,要调整排列的大小,分布,间距和角度,双击这个画笔,设置 。

5、之后我们在打开对象的菜单栏,在里面我们找到路径这一个选项。直接点击连接或者是快捷键Ctrl+J;

6、之后两个断裂的端点就可以进行连接了。

直接钢笔工具点你所想要的节点就ok了

路径的长度可以用 Illustrator 的脚本获知。

1. 复制以下脚本代码到任意的文本编辑器(以“记事本”为例)并保存为 .js 文件(以文件名“ai脚本.js”为例)。

复制如下代码:

function alertPathItem() {
    
    try {
        app.activeDocument.selection
        PathItem
    } catch (err) {
        alert('未选择任何路径!')
        return
    }

    var RATE = 1
    var INDENT_SIZE = 2
    var RATE_SQR = RATE * RATE
    var INDENT_STR = Array(INDENT_SIZE + 1).join(' ')
    
    var selectionList = app.activeDocument.selection
    var printedString = ''
    var i, s
    for (i = 0; i < selectionList.length; i++) {
        s = selectionList[i]
        if (!(s instanceof PathItem)) {
            continue
        }
        printedString += '自顶向下第' + (i + 1) + '条路径:
'
        printedString += INDENT_STR + '长度:' + s.length / RATE + '像素
'
        printedString += INDENT_STR + '面积:' + Math.abs(s.area / RATE_SQR) + '平方像素
'
    }

    alert(printedString)

}

alertPathItem()

粘贴到记事本中,并保存为“ai脚本.js”(如果用记事本,注意选择以下红框中的“所有文件”,以确保后缀名是“.js”,而不是“.txt”):

保存为“ai脚本.js”

2. 在 Illustrator 中执行脚本。

在 Illustrator 选中需要被测量的一条或多条路径(注意:不能是路径组合、复合路径、剪切蒙版等,只能是简单的路径):

选中一条或多条路径

然后把刚才的文件拖动到 Illustrator 中,脚本就开始在当前的 Illustrator 文档上执行了。运行结果如下:

运行结果

注意:

1. 以上教程是基于 Illustrator CS6 以及 Illustrator CC 2019 编写的,只在这两个版本做过测试。

2. 测量结果通常保留了很多位小数,但通常只有前面三个有效数字是准的。

3. 脚本里面用的单位是“像素”,如果用的是其他单位(以“毫米”为例),可以画一个 100 毫米 * 100 毫米的正方形作为参照物并进行测量,就可以对接下来测量的结果用计算器进行变换了。(懂脚本代码的同学可以根据测量结果修改第 11 行的 RATE 常量)

只是想拿工具去用、对脚本代码不感兴趣的看到这里就够了。


对脚本感兴趣的同学先熟悉一下 Javascript 语言的语言结构,然后到 Adobe 官网搜索关于 Illustrator 脚本的相关文档。获取到所选对象长度的关键代码如下:

var firstSelectionLen = app.activeDocument.selection[0].length

以上代码获取到了所选到对象的第一个的长度。



Adobe Illustrator是矢量图制作软件,所作图形都是矢量图形,除了做图的时候所给的尺寸外,路径长度是无法计算的