選択したオブジェクトに枠を付ける

選択されたオブジェクトに対して四角い枠を付けます。この枠はオブジェクトを囲むように新規に生成されます。以下のサンプルは、枠を付けたいオブジェクトを選択してから実行してください。バージョン10用と、CS以降ではスクリプトが異なります。また、バージョン10とCSはSHIFT JISの文字コードで保存してください。CS2はUTF-8で保存してください。(間違えると動きません)

【バージョン10用】
objColor = new Color();
tempColor = new CMYKColor();
tempColor.cyan = 100;
tempColor.magenta = 100;
tempColor.yellow = 0;
tempColor.black = 0;
objColor.cmyk = tempColor;
selObj = activeDocument.selection;
for (i=0; i<selObj.length; i++)
{
x1 = selObj[i].geometricBounds[0];
y1 = selObj[i].geometricBounds[1];
x2 = selObj[i].geometricBounds[2];
y2 = selObj[i].geometricBounds[3];
w = Math.abs(x2-x1);
h = Math.abs(y2-y1);
rectObj = activeDocument.pathItems.rectangle(y1,x1,w,h);
rectObj.filled = false;
rectObj.stroked = true;
rectObj.strokeWidth = 6;
rectObj.strokeColor = objColor;
}

【バージョンCS/CS2用】
objColor = new CMYKColor();
objColor.cyan = 100;
objColor.magenta = 100;
objColor.yellow = 0;
objColor.black = 0;
selObj = activeDocument.selection;
for (i=0; i<selObj.length; i++)
{
x1 = selObj[i].geometricBounds[0];
y1 = selObj[i].geometricBounds[1];
x2 = selObj[i].geometricBounds[2];
y2 = selObj[i].geometricBounds[3];
w = Math.abs(x2-x1);
h = Math.abs(y2-y1);
rectObj = activeDocument.pathItems.rectangle(y1,x1,w,h);
rectObj.filled = false;
rectObj.stroked = true;
rectObj.strokeWidth = 6;
rectObj.strokeColor = objColor;
}


囲む枠の色はcyan, magenta, yellow, blackの値を変更してください。単位はパーセントです。

【バージョン10の場合は以下の値】
tempColor.cyan = 100;
tempColor.magenta = 100;
tempColor.yellow = 0;
tempColor.black = 0;

【バージョンCSの場合は以下の値】
objColor.cyan = 100;
objColor.magenta = 100;
objColor.yellow = 0;
objColor.black = 0;


枠の線の太さは以下の行の値を変更してください。単位はポイントです。

rectObj.strokeWidth = 6;




[サンプルをダウンロード]