毎日モザイク

White Room Layout Works

2012-02-09T20:31:38+09:00 [Thu]

JS版。

JS版。なんとなく動く。

JSはあんまし得意じゃないので、カコイイか悪いかもわかりませんが、AS版と同じことを書いたのでだいたい同じように動きます。

JSはテンプレートがあるので、色付けは割と普通w

sel = activeDocument.selection;

for(i in sel) {
    if(sel[i].typename == "GroupItem") {
        p = sel[i].pathItems;
        d = sel[i].placedItems;
        if(p.length == 1 && d.length == 1) {
            pp  = p[0];
            dd  = d[0];
            ppw = pp.width;
            pph = pp.height;
            ppp = pp.position;
            ddw = dd.width;
            ddh = dd.height;
            dd.width  = ppw;
            dd.height = ddh * ppw / ddw;
            if(pph > (ddh * ppw / ddw)) {
                dd.width  = ddw * pph / ddh;
                dd.height = pph;
            }
            xdif = (ppw - dd.width) / 2;
            ydif = (pph - dd.height) / 2;
            if(xdif < 0 ) {xdif = -xdif;}
            if(ydif < 0 ) {ydif = -ydif;}
            dd.position = [ppp[0] - xdif,ppp[1] + ydif];
        }
    }
}

illustratorでindesignの一番左のボタンみたいなの。のJS版