おはようございます。
またイラレスクリプトの復習がてらこんなのを作ってみました。
ちょっと前のDTPの勉強会でヒントをえたので
2色以上のカラーオブジェクト(塗り)を選択して実行すると。
中間色の四角いオブジェクトがアートボードの左上のほうにずらーっと出来る感じ。
これをスウォッチグループに登録してもいいしスポイトでちゅっちょしてもよし。
計算であれこれしちゃったからわかりにくくなっちゃったかなあ。
またこうしたほうがってのがありましたらコメントまってます。
var lay = app.activeDocument.activeLayer var sel =app.selection var Tile_Count=0 if(sel.length>1){ var dia = new Window("dialog", "配色セット作成", [0,0,250,110]); dia.pane1 = dia.add("panel",[5,10,240,60],"タイルの数"); dia.tex1 = dia.pane1.add("edittext",[10,10,100,30]); dia.add("statictext",[110,30,240,50],"個"); dia.bot1 = dia.add("button",[10,70,100,100],"実行", { name:"ok"}); dia.tex1.text=5; dia.center(); dia.show(); for (i=0; i<(sel.length-1); i++){ for (j=i+1; j<sel.length;j++){ ColorTile(sel[i],sel[j],(25*Tile_Count),dia.tex1.text); Tile_Count++; } } }else{ alert ("カラーオブジェクトは2つ以上選択してください"); } function ColorTile(Obj1,Obj2,y,Tx){ var C_Keisuu=(Obj2.fillColor.cyan-Obj1.fillColor.cyan)/(Tx-1); var M_Keisuu=(Obj2.fillColor.magenta-Obj1.fillColor.magenta)/(Tx-1); var Y_Keisuu=(Obj2.fillColor.yellow-Obj1.fillColor.yellow)/(Tx-1); var K_Keisuu=(Obj2.fillColor.black-Obj1.fillColor.black)/(Tx-1); for (var i=0; i<Tx; i++){ var Tile =lay.pathItems.rectangle(-10-y,10+(i*25),20,20); Tile.stroked =false Tile.fillColor.cyan=Obj1.fillColor.cyan+(C_Keisuu*i); Tile.fillColor.magenta=Obj1.fillColor.magenta+(M_Keisuu*i); Tile.fillColor.yellow=Obj1.fillColor.yellow+(Y_Keisuu*i); Tile.fillColor.black=Obj1.fillColor.black+(K_Keisuu*i); } }
コメント
アクティブレイヤーにタイルを作るように修正しました!
さらに、タイルに罫線の設定が繁栄されないようにしました。