クリエイター手抜きプロジェクト[109]Illustrator CS2編 テキストに交互に色をつけてエリアテキストに流し込む
── 古籏一浩 ──

投稿:  著者:


今回は、Illustrator CS2でエリアテキスト内に流し込む文字に交互に色を付けるスクリプトです。エリアテキスト内などの文字に、交互に色を指定していくのは手間がかかります。このサンプルでは、最初に2種類の文字列を入力すると、指定された色で交互にエリアテキスト内に文字が流し込まれます。


文字の色は以下の2行で指定します。CMYKカラー指定の場合は4つのパラメータでCMYKの順番、RGBカラー指定の場合はRGBの順番になります。

color1 = setColor(100,0,0,0);
color2 = setColor(0,100,0,0);

2種類の文字を交互に色づけして表示するだけでなく3種類、4種類なども可能です。


【CMYKで指定する場合】
str1 = prompt("文字1","ABC");
str2 = prompt("文字2","DEF");
count = parseInt(prompt("繰り返し回数",10));
txt = "";
for(i=0; i< count; i++) txt += str1 + str2;
color1 = setColor(100,0,0,0);
color2 = setColor(0,100,0,0);
sel = activeDocument.selection;
for (i=0; i< sel.length; i++)
{
cnt = 0;
txtRange = sel[i].textRange;
txtRange.contents = txt;
for(cnt=0; cnt< txt.length;)
{
for (j=0; j< str1.length; j++)
{
txtRange.characters[cnt++].fillColor = color1;
}
for (j=0; j< str2.length; j++)
{
txtRange.characters[cnt++].fillColor = color2;
}
}
}

function setColor(C,M,Y,K)
{
var txtColor = new CMYKColor();
txtColor.cyan = C;
txtColor.magenta = M;
txtColor.yellow = Y;
txtColor.black = K;
return txtColor;
}


【RGBで指定する場合】
str1 = prompt("文字1","ABC");
str2 = prompt("文字2","DEF");
count = parseInt(prompt("繰り返し回数",10));
txt = "";
for(i=0; i< count; i++) txt += str1 + str2;
color1 = setColor(255,0,0);
color2 = setColor(0,0,255);
sel = activeDocument.selection;
for (i=0; i< sel.length; i++)
{
cnt = 0;
txtRange = sel[i].textRange;
txtRange.contents = txt;
for(cnt=0; cnt< txt.length;)
{
for (j=0; j< str1.length; j++)
{
txtRange.characters[cnt++].fillColor = color1;
}
for (j=0; j< str2.length; j++)
{
txtRange.characters[cnt++].fillColor = color2;
}
}
}

function setColor(R,G,B)
{
var txtColor = new RGBColor();
txtColor.red = R;
txtColor.green = G;
txtColor.blue = B;
return txtColor;
}


【古籏一浩】openspc@po.shiojiri.ne.jp
< http://www.openspc2.org/
>
もうすぐ2007年。でも、この原稿書いたのは梅雨の時期...。
今日より、ツヤツヤになったキーボードから新品のキーボード。やっと、まともに文字が入力できそう。

photo
改訂第4版 JavaScript ポケットリファレンス
古籏 一浩
技術評論社 2006-10-18
おすすめ平均 star
star中級者向けです。

プロとして恥ずかしくないJavaScriptの大原則 プロとして恥ずかしくないスタイルシートの大原則 [改訂版] PHP ポケットリファレンス 改訂新版 SQLポケットリファレンス [改訂版] VBScriptポケットリファレンス



photo
Google Maps API逆引きクイックリファレンス―WEB2.0対応
古籏 一浩
毎日コミュニケーションズ 2006-09
おすすめ平均 star
starようやく出ました。使えるGoogleMapsリファレンス。

Google Maps API徹底活用ガイド Google Maps Hacks -地図検索サービス徹底活用テクニック- Googleマップ+Ajaxで自分の地図をつくる本  Google Maps API徹底活用 サーバサイドAjax入門 Java/PHP/ASP.NET連携でAjaxプログラミングを極める! プロセス オブ ウェブデザイン 企画からデザインへ 落とし込みの技術

by G-Tools , 2006/12/04