■プログラム説明(ソースコード説明)
グリッドを描くにはfor()を使ってグリッド間隔ごと繰り返し横線および縦線を描きます。グリッドを描く座標を配列形式で指定しselect()を使って範囲を選択します。選択された範囲をfill()を使って塗りつぶす事で線が描かれます。
---------------------------------------------------------------------------------------------------------
■ソースコード
RGBColor = new SolidColor(); ←カラーオブジェクトを作成します
RGBColor.red = 0;
RGBColor.green = 255; ←緑色にします
RGBColor.blue = 0;
w = parseFloat(activeDocument.width); ←ドキュメントの横幅を求めます
h = parseFloat(activeDocument.height); ←ドキュメントの縦幅を求めます
gridW = 32; ←横のグリッド幅を32にします
gridH = 32; ←縦のグリッド幅を32にします
for (x=0; x<w; x+=gridW) ←縦線を指定されたグリッド間隔で繰り返し描画します
{
selReg = [[x,0],[x+1,0],[x+1,h],[x,h]];
activeDocument.selection.select(selReg);
activeDocument.selection.fill(RGBColor,ColorBlendMode.NORMAL, 100, false);
}
for (y=0; y<h; y+=gridH) ←横線を指定されたグリッド間隔で繰り返し描画します
{
selReg = [[0,y],[w,y],[w,y+1],[0,y+1]];
activeDocument.selection.select(selReg);
activeDocument.selection.fill(RGBColor,ColorBlendMode.NORMAL, 100, false);
}
---------------------------------------------------------------------------------------------------------
■使い方
1:ファイルメニューからスクリプトを実行します。
2:ドキュメントに緑色のグリッドが描かれます。
---------------------------------------------------------------------------------------------------------
■ポイント
縦と横のグリッドを別々のレイヤーにして生成したい場合には以下のようにactiveDocument.artLayers.add()を使います。
RGBColor = new SolidColor();
RGBColor.red = 0;
RGBColor.green = 255;
RGBColor.blue = 0;
w = parseFloat(activeDocument.width);
h = parseFloat(activeDocument.height);
gridW = 32;
gridH = 32;
activeDocument.artLayers.add();
for (x=0; x<w; x+=gridW)
{
selReg = [[x,0],[x+1,0],[x+1,h],[x,h]];
activeDocument.selection.select(selReg);
activeDocument.selection.fill(RGBColor,ColorBlendMode.NORMAL, 100, false);
}
activeDocument.artLayers.add();
for (y=0; y<h; y+=gridH)
{
selReg = [[0,y],[w,y],[w,y+1],[0,y+1]];
activeDocument.selection.select(selReg);
activeDocument.selection.fill(RGBColor,ColorBlendMode.NORMAL, 100, false);
}
---------------------------------------------------------------------------------------------------------
■注意
なし
■実際のスクリプトをダウンロード(sample.js.zip)