Windows10、CS4
オブジェクトを指定したサイズに揃えて、1つずつ新しいレイヤーにコピペするスクリプトを作りました。ちゃんと中心に揃います!
イラレでアプリのアイコンとかを作って、いっぱい作るほど書き出す作業が辛い!レイヤー毎に書き出すスクリプトはあっても配置までが辛い!ということで作りました。
※アウトライン化してから使用してください
アウトライン化していない場合は、アンカーポイントの両端が指定したサイズになり線の端が左端または下に揃うため右か上にはみ出します。
細かいチェックはしていません。このスクリプト を使用して問題が起きた場合責任は負いません。
こんな感じです↓
オブジェクトを指定したサイズに揃えて1つずつレイヤーにコピペ。 pic.twitter.com/0aXdJoPLHU
— ふわぷか (@float_jelly) 2018年3月31日
沢山だと黒くなりますができると思います。↓
オブジェクトを指定したサイズに揃えて1つずつレイヤーにコピペ。 pic.twitter.com/jmitpmAzts
— ふわぷか (@float_jelly) 2018年3月31日
公園の素材は公園の遊具と木のアイコンセットイラスト/無料イラストなら「イラストAC」を使用しています。
以下ソースコードです。
#target "illustrator"
//選択中のオブジェクトを取得
var sel = app.activeDocument.selection;
//1個以上の場合のみ動作
if(sel.length > 0){
//ダイアログの設定
var dialog = new Window("dialog","正方形のサイズを入力",[0,0,190,120]);
dialog.add ("statictext", [10,20,60,40], "辺の長さ");
var length = dialog.add("edittext",[60,15,150,40],"300");//数の入力
var btnOK = dialog.add("button",[10,70,80,100],"OK",{name:'ok'});//OK
var btnCancel = dialog.add("button",[100,70,170,100],"cancel",{name:'cancel'});//CANCEL
length.active = true; //テキストエリアをフォーカスする
//キャンセルの処理
btnCancel.onClick = function(){ dialog.close(); }
//OKの処理
btnOK.onClick = function(){
dialog.close(); //ダイアログを閉じる
var n=parseInt(length.text);
//新規ドキュメントを作成
var ndoc =documents.add(DocumentColorSpace.RGB,n,n);
//1つ目のオブジェクトを配置
obj = sel[0].duplicate();
obj.moveToBeginning(ndoc);
var bns = sel[0].visibleBounds;
width=obj.width;
height=obj.height;
if(width>height){
//横長の場合
rwidth=n/(width)*100;
obj.resize(rwidth,rwidth);
var bns = obj.visibleBounds;
y=obj.height;
yy=(n-y)/2
//座標を指定
obj.left = 0;
obj.top = n-yy;
}else{
//縦長の場合
rheight=n/(height)*100;
obj.resize(rheight,rheight);
var bns = obj.visibleBounds;
x=obj.width;
xx=(n-x)/2
//座標を指定
obj.left = 0+xx;
obj.top = n;
}
//2個以上の場合繰り返し
for (i=1; i<sel.length; i++){
//レイヤーを作成
lay = activeDocument.layers.add();
lay.name = "レイヤー"+(i+1);
//オブジェクトを貼り付け
obj = sel[i].duplicate();
obj.moveToBeginning(ndoc);
var bns = sel[i].visibleBounds;
width=obj.width;
height=obj.height;
if(width>height){
//横長の場合
rwidth=n/(width)*100;
obj.resize(rwidth,rwidth);
var bns = obj.visibleBounds;
y=obj.height;
yy=(n-y)/2
//座標を指定
obj.left = 0;
obj.top = n-yy;
}else{
//縦長の場合
rheight=n/(height)*100;
obj.resize(rheight,rheight);
var bns = obj.visibleBounds;
x=obj.width;
xx=(n-x)/2
//座標を指定
obj.left = 0+xx;
obj.top = n;
}
}
}
dialog.center();//ダイアログ表示位置をモニターの中心に移動
dialog.show();//作成したダイアログを表示
}
イラストダウンロードサイト【イラストAC】でフリー素材を投稿しています。よろしければご覧ください。
プロフィールページ:イラストレーター ふわぷかさんのプロフィール