【Photoshop】選択範囲に対してガイドをグリッド状に引くスクリプト | Blue-Scre{7}n.net | よそいちのDTPメモ

トップページ » Photoshop » 【Photoshop】選択範囲に対してガイドをグリッド状に引くスクリプト

【Photoshop】選択範囲に対してガイドをグリッド状に引くスクリプト

公開日:2018年1月28日 

 A4やA3のドキュメントを4分割して、そこからラフスケッチを始めてアセット書き出し→清書という流れでイラストを描くことが多いのですが、良い構図を探るため、枠に対してグリッド(2*2や、3*3のガイド)を作りたいことがあります。

 ドキュメント全体に引くことはさほど面倒でもないんですが、「選択範囲に対して」となるとちょっと面倒です。この工程を簡略化したくて書いたスクリプトです。Photoshopなんだしエクステンションにすばいいじゃんとも思いますが現状の私の技術ではスクリプトが限度ということでひとつ…

手順

1.選択範囲を作成した状態で、スクリプトを実行します。

選択範囲を指定して、スクリプトを実行
選択範囲を指定して、スクリプトを実行

2.ダイアログが表示されます。2*2グリッドまたは3*3グリッドを作ることができます。作例では3*3グリッドを選択し、OKボタンをクリックしています。

引きたいグリッドの種類を選択
選引きたいグリッドの種類を選択

3.指定した種類のグリッドが作成されます。

指定した種類のグリッドが作成される

スクリプト本文

ダウンロード

//選択範囲のバウンディングボックスにガイド
//ガイド引くグリッド数を設定
uDlg = new Window('dialog','選択範囲にガイド',[0,0,140,220]);
uDlg.okBtn = uDlg.add("button",[15,80,100,100], "OK!", { name:"ok"});
uDlg.rBtn1 = uDlg.add("radiobutton",[15,10,275,10+30], "2×2グリッド");
uDlg.rBtn2 = uDlg.add("radiobutton",[15,40,275,30+30], "3×3グリッド");
uDlg.cBox = uDlg.add("checkbox",[10,130,275,30+25], "現在のガイドを削除");
uDlg.center();
uDlg.show();
//[現在のガイドを削除]ボックスにチェックがある場合、既存ガイド及びガイドレイヤーを削除
if(uDlg.cBox.value==true)
  {
  app.activeDocument.guides.removeAll();
  }
try{
  var sel=app.activeDocument.selection;
  var selBounds=sel.bounds;
  var gds=app.activeDocument.guides;
  var selWidth=selBounds[2]-selBounds[0];
  var selHeight=selBounds[3]-selBounds[1];
  //2×2グリッド
  if(uDlg.rBtn1.value==true){
      gds.add(Direction.VERTICAL, selBounds[0]);
      gds.add(Direction.HORIZONTAL, selBounds[1]);
      gds.add(Direction.VERTICAL, selBounds[2]);
      gds.add(Direction.HORIZONTAL, selBounds[3]);
      gds.add(Direction.VERTICAL, selBounds[0]+selWidth/2);
      gds.add(Direction.HORIZONTAL, selBounds[1]+selHeight/2);
    }
  //3×3グリッド
  if(uDlg.rBtn2.value==true){
      gds.add(Direction.VERTICAL, selBounds[0]);
      gds.add(Direction.HORIZONTAL, selBounds[1]);
      gds.add(Direction.VERTICAL, selBounds[2]);
      gds.add(Direction.HORIZONTAL, selBounds[3]);
      gds.add(Direction.VERTICAL, selBounds[0]+selWidth/3);
      gds.add(Direction.VERTICAL, selBounds[0]+selWidth/1.5);
      gds.add(Direction.HORIZONTAL, selBounds[1]+selHeight/3);
      gds.add(Direction.HORIZONTAL, selBounds[1]+selHeight/1.5);
    }
uDlg.destroy();
}catch(e){
  };

スケッチ完了

完成版

【魔王とアン -まったりゆったり世界征服】アン201801 | skskSketch 〜スケスケスケッチ〜


タグ:


広告