メニュー

【Illustrator】文字単位で交互に色を変更するスクリプト

テキストの特定の部分の色を変更出来ないか挑戦してみました。

本当はPhotoshopで作成したかったのですが、実力不足でイラレで作成しました。

目次

海外でフリーランスをしているテクニカルアーティスト
ゲーム開発・映像制作・WEB制作等を請け負っています。
当ブログは作業効率化のための技術ブログです。

[Photoshop] 文字色を変えるスクリプト

テキストまるごと色を変えるだけなら簡単です。

layer = app.activeDocument.activeLayer;

layer.textItem.color.rgb.red = 0;
layer.textItem.color.rgb.green = 255;
layer.textItem.color.rgb.blue = 0;

[Photoshop] 文字をカウントするスクリプト

一応、文字数を数えたりはできました。

var words = "あいうえお";
words = words.replace(/(\r\n|\n|\r)/gm," ");
while (words.indexOf("  ") != -1) {words = words.replace("  ", " ")};
var endSpace = /\s$/;
words = words.replace(endSpace, "");
var charCount = words.split(" ").join(" ").length;
alert ("\n "+ charCount + " Characters");

あとは選択したレイヤーの文字を配列にいれたら良いのですが、ここから先、文字単位で色を変えるにはScriptingListenerで解析すればよいのですが、行数が長くて諦めました。

[Illustrator]文字単位で交互に色を変更するスクリプト

ということでイラレなら文字単位で編集できるのでこちらで、文字単位で交互に色を変更するスクリプトを書いてみました。

※RGBで指定とかは入力時は面倒でイラレは描画色・背景色みたいなものはなく、オブジェクトから色をとることになるので、スウォッチから色を取ることにしました。

Illustrator ▶ Photoshopへコピペ

テキストツール選択時にコピペすれば、テキストのままペーストされます。

まとめ

AEとPhotoshopとIllustrator、ぜんぜん勝手が違うので、同じような挙動のスクリプト書くのは大変だということがわかりました。

時間かければ出来なくなさそうですが…。良いリファレンスがあったらまた挑戦してみようと思います。

全記事一覧

  • URLをコピーしました!

Illustratorに関する参考記事・ツール・書籍のまとめ

イラストレーターのソフトウェア購入

Illustratorが学べるスクール

Illustratorの参考書籍

独学で勉強できてしまうIllustratorですが、他の人の手法を見ると全然使いこなせてなかったことに気がつくこともあります

著:井村 克也
¥2,398 (2023/01/13 23:17時点 | Amazon調べ)
著:高橋 としゆき, 著:ヤマダ ジュンヤ, 著:大賀 葉子, 著:三浦 悟, 著:鈴木 貴子
¥2,178 (2023/01/13 23:17時点 | Amazon調べ)
目次