金曜日, 7月 28, 2023

JavaScriptでAI遊び 06 
選択したテキストをアウトライン化

メニューで処理出来るので、わざわざ作る必要はないのですが、選択した全てのオブジェクトに対してループを使用して、テキストオブジェクトをアウトライン化するJavaScriptを作ってみました。テキストオブジェクトが選択されていない場合は、アラートを表示。

/* text_outline.jsx */
// ドキュメントが開いていることを確認
if (app.documents.length > 0) {
// アクティブなドキュメントを取得
var doc = app.activeDocument;

// 選択されたアイテムがあるか確認
if (doc.selection.length > 0) {
// 選択された全てのアイテムに対して処理を行う
for (var i = 0; i < doc.selection.length; i++) {
var selectedItem = doc.selection[i];

// テキストオブジェクトの場合のみアウトライン化する
if (selectedItem.typename === 'TextFrame') {
// テキストオブジェクトをアウトライン化する
selectedItem.createOutline();
}
}

// 変更を反映させるためにドキュメントを更新
doc.selection = null;
} else {
alert("オブジェクトが選択されていません。");
}
} else {
alert("ドキュメントが開かれていません。");
}
/* text_outline.jsx */

処理そのものはIllustratorの「書式」>[アウトラインを作成]と同じでフォント以外を選択しても・・・
フォントのみアウトライン化出来ます。