« [2148] セカンドライフ人気の7つの理由 | index | ■KNNエンパワーメントコラム セカンドライフ人気の7つの理由/神田敏晶 »

■クリエイター手抜きプロジェクト[118]Illustrator CS2編 行ごとに色を変えて文字を配置する/古籏一浩

with Ajax Amazon

今回はテキストファイルを読み込んで行ごとに色を変えて配置する、というものです。ドキュメントを開いておいてからスクリプトを実行すると、配置するテキストファイルを選択するダイアログが表示されます。ここでテキストファイルを選択すれば、自動的にテキストが行単位で分割され配置されます。テキストファイルを読み込む際に、行ごとに分割するためのスクリプトとしても使えます。この場合には

━━━━━━━━━━━━━━━━━━━━━━━━━━━ TOKUPRE PR ━
チラシ印刷ポスター印刷新聞折込チラシカタログ印刷冊子印刷
ポストカード印刷巻き三つ折り観音折りなどに対応した印刷サービス
印刷会社はこちらから↓↓↓ 選挙ポスター印刷もあります。
http://www.ddc.co.jp/index.html
━━━━━━━━━━━━━━━━━━━━━━━━━━━ TOKUPRE PR ━

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

drawRect(tx, ty, 300, 15, colorList[n]);

//drawRect(tx, ty, 300, 15, colorList[n]);

とすれば色は付かなくなり単純に行単位で分割されたテキストになります。色を指定する場合には先頭にある以下の部分のCMYKの数値を変更します。

colorList = [
defColor(100,0,0,0),
defColor(100,20,0,0),
defColor(50,0,50,0),
defColor(10,0,100,0)
];

例えばdefColor(100,10,20,0)はC=100, M=10, Y=20, K=10を指定したことになります。defColorで並べた数だけ自動的に色を変えて配置することができます。10個かけば10行ごとに色が繰り返し表示されることになります。一番最後のdefColor()のカッコの後には,を付けないように注意してください。


【スクリプト】
colorList = [
defColor(100,0,0,0),
defColor(100,20,0,0),
defColor(50,0,50,0),
defColor(10,0,100,0)
];
filename = File.openDialog("読み込むテキストファイルを指定してください");
if (filename)
{
tx = 10; // 表示開始X座標
ty = 800; // 表示開始Y座標
stepY = 15; // 15pt;
fileObj = new File(filename);
flag = fileObj.open("r");
if (flag == true)
{
count = 0;
while(!fileObj.eof)
{
text = fileObj.readln();
n = count % colorList.length;
drawRect(tx, ty, 300, 15, colorList[n]);
newText(text, tx, ty);
count++;
ty -= stepY;
}
fileObj.close();
}else{
alert("ファイルが開けませんでした");
}
}
function newText(txt, x, y)
{
var textObj = activeDocument.textFrames.add();
textObj.contents = txt;
if (txt) textObj.paragraphs[0].size = 9; // 9pt
textObj.translate(x,y);
}
function drawRect(x,y,w,h, col)
{
var pObj = activeDocument.pathItems.rectangle(y+h-3,x,w,h);
pObj.filled = false; // 塗りなし
pObj.stroked = true; // 線あり
pObj.strokeWidth = 0.25; // 線幅0.25ポイント
pObj.fillColor = col; // 塗りの色をスォッチに指定
}
function defColor(c,m,y,k)
{
var colObj = new CMYKColor();
colObj.cyan = c;
colObj.magenta = m;
colObj.yellow = y;
colObj.black = k;
return colObj;
}


【古籏一浩】openspc@po.shiojiri.ne.jp
< http://www.openspc2.org/ >
2月も、もう終わりですが、暖冬すぎて冬という感じがしませんでした。
仕事多すぎてページの更新もしていなかったり...

photo
Ajaxライブラリリファレンス
古籏 一浩
ビー・エヌ・エヌ新社 2007-01

まるごとJavaScript & Ajax ! Vol.1 Ajaxテクニックブック Ajax Hacks ―プロが教えるWebアプリケーション構築テクニック 標準DOMスクリプティング JavaScript+DOMによるWebアプリデザインの基礎 Ajaxハッカーズ・プログラミング―基礎からprototype.js、Yahoo!UIライブラリ、HTML_AJAXの活用までWebアプリケーション制作のプログラミング・テクニック

by G-Tools , 2007/02/26

トラックバック

このエントリーのトラックバックURL:

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

back number

Trackbacks

デジクリ出演... (tech tech okdt 2008年12月15日)

来月は12月だし... (area-Bログ 2008年11月10日)

広告を変えるレスポンスCM動画... (福岡デザイン日記 2008年10月01日)

専門用語には必ず「読みがな」を付けてほしい... (M.C.P.C. 2008年07月22日)

T-Time... (あさりの楽天倉庫 2008年07月03日)

[社会]人と関わること... (DTP+印刷営業メモ 2008年06月18日)

【これはひどい】ゴミの有料化は特別なコトではありま... (あかつき@PocketDTP 2008年06月16日)

なんでも面白おかしく書けば良いとは思わない... (InDesign居残り補習室 2008年06月16日)

新しいiMacのレビュー記事... (Mein zweiter Blog 2008年06月03日)

デザイナーという仕事... (大阪のホームページ制作会社リッツ・デザイン・ワークス制作つれづれ 2008年05月28日)

DTPデザイナーは確実にいる... (M.C.P.C. 2008年05月29日)

DTP作業に従事する人... (InDesign居残り補習室 2008年05月29日)

【DTP】「DTPデザイナー」じゃ、ダメですか?... (glad design blog 2.0 2008年06月02日)

[作品配布]ゴールデンウィークまでに****しなく... (Yunyの鉄は、熱いうちに打て。 2007年03月05日)

カレンダーを自動生成したい... (スタジオ・ポットSD 2008年01月17日)

categories

          
Apple Store(Japan)
Apple Store(Japan)
XML FEED