您当前的位置: 首页 > 

插件开发

暂无认证

  • 1浏览

    0关注

    492博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

illustrator插件-画板功能开发-页面适配对象-js脚本开发-ai插件

插件开发 发布时间:2022-03-24 07:43:05 ,浏览量:1

文章目录
    • 1.算法程序
    • 2.文本转执行
    • 3.作者答疑

1.算法程序

  illustrator是矢量编辑软件,画板是绘制处理的重要容器,开发一个页面适配对象功能,源代码如下所示:

var doc = app.activeDocument;
var obj = doc.selection;
var bnd = new Array();
if (documents.length > 0) {
    if (obj.length > 0) {
        bnd = getBounds(obj);
        W = bnd[2] - bnd[0];
        H = bnd[1] - bnd[3];
        X = bnd[0];
        Y = bnd[1];
    } else {
        doc.rulerOrigin = Array(0, 0);
        bnd[0] = 0;
        bnd[2] = doc.width;
        bnd[1] = doc.height;
        bnd[3] = 0;
    }
    doc.cropBox = bnd;
    doc.cropStyle = CropOptions.Standard;
}

function getBounds(obj) {
    var selObj1 = new Array();
    var selObj2 = new Array();
    var vgb1 = new Array();
    var vgb2 = new Array();
    var n = obj.length;
    if (n > 0) {
        if (obj[0].typename == "GroupItem" && obj[0].clipped && obj[0].pageItems.length > 1) {
            clipObj = obj[0].pathItems[0].geometricBounds;
            vgb1 = clipObj;
        } else {
            selObj1 = obj[0];
            vgb1 = selObj1.visibleBounds;
        }
        if (n > 1) {
            for (var i = 1; i  1) {
                    vgb2 = obj[i].pathItems[0].geometricBounds;
                } else {
                    vgb2 = selObj2.visibleBounds;
                }
                if (vgb1[0] > vgb2[0]) {
                    vgb1[0] = vgb2[0]
                }
                if (vgb1[1]             
关注
打赏
1665481431
查看更多评论
0.0379s