楽天セール開催中!ポイント最大11倍!セール会場へ

After Effects│選択したレイヤーの文字の状態を変更するスクリプト

目次

文字の塗りと線だけを選択レイヤーで変更する

このスクリプトは文字パネルの塗り・線を変更する例で、レイヤースタイルの「境界線」は追加しません。

別名保存した練習コンポジションに、クリックして作ったテキスト「AB」と「CD」を置き、文字内容と元の色・線幅を記録します。

ソーステキストにキーや式を付けず、2枚のテキストレイヤーだけを選択します。

下のコードをtext-style.jsxとしてUTF-8で保存し、「ファイル」→「スクリプト」→「スクリプトファイルを実行」から実行します。

期待する変更は黒い塗りと白い2pxの文字の線で、「AB」「CD」の文字内容やフォントサイズは代入し直しません。

(function () {
    var comp = app.project && app.project.activeItem;
    if (!(comp instanceof CompItem)) { alert("Open a composition."); return; }
    var layers = comp.selectedLayers, targets = [];
    if (!layers.length || layers.length > 20) { alert("Select 1 to 20 static text layers."); return; }
    for (var i = 0; i < layers.length; i++) {
        var layer = layers[i];
        if (!(layer instanceof TextLayer) || layer.locked) {
            alert("Select unlocked text layers only."); return;
        }
        var source = layer.property("ADBE Text Properties").property("ADBE Text Document");
        if (source.numKeys || source.expression !== "") {
            alert("Source Text must have no keys or existing expression."); return;
        }
        targets.push({source:source, doc:source.value});
    }
    var changed = 0;
    app.beginUndoGroup("Change selected text fill and stroke");
    try {
        for (i = 0; i < targets.length; i++) {
            var doc = targets[i].doc;
            doc.applyFill = true; doc.fillColor = [0, 0, 0];
            doc.applyStroke = true; doc.strokeColor = [1, 1, 1]; doc.strokeWidth = 2;
            targets[i].source.setValue(doc); changed++;
        }
    } catch (error) {
        alert("Stopped after " + changed + " changes. Undo or reopen the practice copy.\n" + error);
    } finally { app.endUndoGroup(); }
}());

文字列全体へ指定色と線幅を設定するため、一部の文字だけの色分けを残す用途には使わないでください。

レイヤースタイルの境界線とテキストアニメーターは別の設定なので、元の効果が有効なら見た目にも影響します。

20枚までの選択を対象にし、非テキスト・ロック・ソーステキストのキー・既存の式が混ざると、書き込み前に停止します。

式が無効になっていても、式の文字列が残っていれば上書きしません。

途中で停止した場合は、一部だけ変更されている可能性があります。

Ctrl+Z/Command+Zを1回実行し、文字内容と元の色・線幅を確認するか、別名保存した練習コピーへ戻してください。

コードの構文・数値計算・模擬APIを確認しましたが、AE本体での操作、描画、取り消しの実行確認は未完了です。

入力・条件操作・結果確認する点
ABとCDを選択黒塗り・白線2px文字内容とフォントサイズを照合
キー・式・非テキスト書き込み前に停止無効な式も保護
途中の書込失敗処理停止・Undo案内変更済みレイヤーも確認

レイヤースタイルの境界線サイズは別の記事で扱います。

参照:コミュニティ管理のTextDocumentとProperty。

資料確認日:2026年10月3日。

旧記事のコマンドIDによる境界線追加は、文字の線とは対象が異なるため、この例から外しました。

旧実装の参考コードはGitHubに残っていますが、本稿の修正版とは内容が異なります。

関連記事

対象の異なる操作は、以下の記事で確認できます。

次に学ぶ・作業環境を選ぶ

学習を続けたい方や、作業環境を整えたい方は、目的に合うガイドをご覧ください。

After Effectsのおすすめ書籍

必要なPCスペック

周辺機器の優先度

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次