Illustrator脚本开发删除文档专色
发布时间:2024-11-08 11:58 [ 我要自学网原创 ] 发布人: 快乐小女 阅读: 1162

function main() {

    try {
        app.activeDocument
    } catch (error) {
        alert('请至少打开一个文档.', "提示")
        return
    }

    var doc = app.activeDocument

    // 获取专色列表
    var spotList = []
    for (var i = 0; i < doc.spots.length; i++) {
        if (doc.spots[i].colorType == ColorModel.SPOT) {
            spotList.push(doc.spots[i])
        }
    }

    var win = new Window("dialog", "我要自学网案例-删除文档的专色")

    if (spotList.length == 0) {
        win.margins = 50
        win.add('statictext', undefined, '当前文档专色数量为 "零" ');
    } else {
        win.add('statictext', undefined, "当前文档共 " + spotList.length + " 个专色, 选择想要删除的专色");
        var panelLocation = win.add("panel", undefined, "")
        var checkboxGroup = panelLocation.add("group", undefined)
        checkboxGroup.orientation = "row"
        checkboxGroup.alignChildren = "top"

        var splitNum
        if (spotList.length < 50) {
            splitNum = 5
        } else if (spotList.length < 100) {
            splitNum = 10
        } else if (spotList.length < 200) {
            splitNum = 20
        }

        var checkBoxList = []
        var tempGroup = checkboxGroup
        for (var i = 0; i < spotList.length; i++) {
            if (i % 10 == 0) {
                tempGroup = checkboxGroup.add("group")
                tempGroup.orientation = "column"
                tempGroup.alignChildren = "left"
            }
            checkBoxList.push(tempGroup.add("checkbox", undefined, spotList[i].name))
        }

        var btnGroup = win.add("group", undefined)

        var allBtn = btnGroup.add("button", undefined, "全选")
        var goBtn = btnGroup.add("button", undefined, "执行")
        var reAllBtn = btnGroup.add("button", undefined, "反选")

        allBtn.onClick = function () {
            for (var i = 0; i < checkBoxList.length; i += 1) {
                checkBoxList[i].value = true
            }
        }

        reAllBtn.onClick = function () {
            for (var i = 0; i < checkBoxList.length; i += 1) {
                if (checkBoxList[i].value) {
                    checkBoxList[i].value = false
                } else {
                    checkBoxList[i].value = true
                }
            }
        }

        goBtn.onClick = function () {
            var count = 0
            for (var i = 0; i < checkBoxList.length; i += 1) {
                if (checkBoxList[i].value) {
                    spotList[i].remove()
                    count = count + 1
                }
            }
            alert("删除成功, 共删除 " + count + " 个专色")
            app.redraw()
            win.close()
        }
    }

    win.onClose = function () {
        panelHeight = win.bounds.height;
        for (var i = 50; i >= 1; i += -2) {
            win.opacity = i / 50;
            $.sleep(1);
            win.bounds.height = panelHeight * (i / 50);
        }

        $.sleep(100);
        callMe()
    }


    win.center()
    win.show()
}

main()

Illustrator脚本开发教程
我要自学网商城 ¥70 元
进入购买
文章评论
0 条评论 按热度排序 按时间排序 /350
遵守中华人民共和国的各项道德法规,
承担因您的行为而导致的法律责任,
本站有权保留或删除有争议评论。
参与本评论即表明您已经阅读并接受
上述条款。
V
特惠充值
联系客服
APP下载
官方微信
返回顶部
分类选择:
电脑办公 平面设计 室内设计 室外设计 机械设计 工业自动化 影视动画 程序开发 网页设计 会计课程 兴趣成长 AIGC