水曜日, 2月 14, 2024

JavaScriptでAI遊び 16 
選択したオブジェクトを指定数で縮小拡大

選択したオブジェクトを指定数(point)で縮小拡大します。最もプロパティーで処理出来るので必要は無いと思いますが・・・

// アクティブなドキュメントを取得
var doc = app.activeDocument;
// ユーザーに縮小する高さを入力してもらう
var newHeight = parseFloat(prompt
("新しい高さを入力(ポイント単位)", "50"));
// 選択されたオブジェクトを取得
var selection = doc.selection;
// 選択されたオブジェクトの存在を確認
if (selection.length > 0) {
// ループを使用し選択したオブジェクトの高さを変更
for (var i = 0; i < selection.length; i++) {
// 選択されたオブジェクトの高さを縮小
// 現在の高さを取得
var currentHeight = selection[i].height;
// 倍率を計算
var scaleFactor = newHeight / currentHeight;
// オブジェクトの比率を保って縮小
selection[i].resize(scaleFactor * 100, scaleFactor *
100, true, true, true, true, 0);
}
} else {
alert("オブジェクトが選択されていません。");
}

任意のオブジェクトを選択し・・・

縮小拡大したい高さのpoint数を入力すれば・・・

中心位置で比率を保ったままサイズ変更します。