10年ほど前から、楽しく自動化を始めて、仕事にしています。

ジャバスクリプトでイラストレーターにテキストを入れる

ジャバスクリプトでイラストレーターにテキストを入れる一つの方法。

イラレで、テンプレートになる台紙を作ります。

ダミーでテキストを打って、選択した状態で、属性に任意の名前を入れます。

custom01

と入れています。

ジャバスクリプトのコード

// 任意のテキスト(ユーザーがダイアログで入力したものにするための設定)
var custom_text = prompt("カスタムテキストを入力してください:", "デフォルトのカスタムテキスト");

if (custom_text) {
    var note_word = "custom01";  // 属性名

    // アクティブなドキュメント内のすべてのページアイテムをループ処理
    for (var i = 0; i < app.activeDocument.pageItems.length; i++) {
        var item = app.activeDocument.pageItems[i];
        
        // ページアイテムのnote属性が指定したnote_wordと一致するか調べる
        if (item.note == note_word) { 
            try {
                // 一致した場合、ページアイテムにユーザーが入力したカスタムテキストを設定
                item.contents = custom_text; 
            } catch (e) {
                // エラーが発生した場合にアラートを表示
                alert("アイテムの内容設定時にエラーが発生しました: " + e.message);
            }
        }
    }
}

動き

ポップアップで、文字を打つ小画面で出てきます。

全てのアイテムを確認し、そのアイテムの属性名が”custom01″だったら、テキストを入れるというものです。

実行します

テキストを打ち換えます。

OKを押すと、

台紙に、同じ属性名のものを複数設定していれば、すべてに反映されます。

角度をつけたり、回転させてみました。

実行。

スクリプトで特定のアイテムを指定するのは、インデザインでは『スクリプトラベル』イラストレーターでは『属性』です。

コメント

この記事へのコメントはありません。

ランキング
開発・運営ランキング
にほんブログ村 IT技術ブログへ
にほんブログ村 IT技術ブログ Tipsへ
にほんブログ村 IT技術ブログ JavaScriptへ
にほんブログ村 IT技術ブログ VBAへ
PAGE TOP