今回のスクリプトは、前回同様、選択されたテキストフレーム内の文字のサイズやフォントを、ランダムに設定するものです。IllustratorとInDesignはスクリプトのプロパティが非常によく似ていますが、やはり同じスクリプトでは動作しません。
最初のスクリプトは、選択されたテキストフレーム内の文字を上下左右にずらします。ちなみに、このスクリプトに関してはIllustratorでもInDesignでも動作します。
最初のスクリプトは、選択されたテキストフレーム内の文字を上下左右にずらします。ちなみに、このスクリプトに関してはIllustratorでもInDesignでも動作します。
var dx = 20; // 左右のずれ
var dy = 10; // 上下のずれ
var selObj = app.activeDocument.selection;
for(var i=0; i<selObj.length; i++){
for(var j=0; j<selObj[i].characters.length; j++){
var x = Math.random() * dx - dx/2;
var y = Math.random() * dy - dy/2;
selObj[i].characters[j].baselineShift = y;
selObj[i].characters[j].tracking = x;
}
}
次は、さらに文字を回転、文字サイズも変更するものです。InDesignで文字を回転する場合は、characterRotationプロパティに回転角度を入れる必要があります。ここはIllustratorとは異なっています。
var dx = 20; // 左右のずれ
var dy = 10; // 上下のずれ
var rot = 30; // 最大30度
var size = 6; // 最大6pt差
var selObj = app.activeDocument.selection;
for(var i=0; i<selObj.length; i++){
for(var j=0; j<selObj[i].characters.length; j++){
var x = Math.random() * dx - dx/2;
var y = Math.random() * dy - dy/2;
var r = Math.random() * rot - rot/2;
var s = Math.random() * size - size/2;
selObj[i].characters[j].baselineShift = y;
selObj[i].characters[j].tracking = x;
selObj[i].characters[j].characterRotation = r;
var csize = selObj[i].characters[j].pointSize;
selObj[i].characters[j].pointSize = csize + s;
}
}
最後のスクリプトは、さらにフォントも変更するものです。
fontList=[] の []内に、文字に適用したいフォント名を指定します。
他のフォントにしたい場合はフォント名を変更してください。もちろん追加することもできます。フォント名は、Illustratorとは異なり日本語フォント名で指定します。
var fontList = [
"小塚ゴシック Pro", // 小塚ゴシックPro
"小塚明朝 Pro", // 小塚明朝Pro
"ヒラギノ角ゴ Pro" // ヒラギノ角ゴシックW6
];
var dx = 20; // 左右のずれ
var dy = 10; // 上下のずれ
var rot = 30; // 最大30度
var size = 6; // 最大6pt差
var selObj = app.activeDocument.selection;
for(var i=0; i<selObj.length; i++){
for(var j=0; j<selObj[i].characters.length; j++){
var x = Math.random() * dx - dx/2;
var y = Math.random() * dy - dy/2;
var r = Math.random() * rot - rot/2;
var s = Math.random() * size - size/2;
var n = Math.floor(Math.random() * fontList.length);
selObj[i].characters[j].baselineShift = y;
selObj[i].characters[j].tracking = x;
selObj[i].characters[j].characterRotation = r;
var csize = selObj[i].characters[j].pointSize;
selObj[i].characters[j].pointSize = csize + s;
selObj[i].characters[j].appliedFont = app.fonts.item(fontList[n]);
}
}
【古籏一浩】openspc@alpha.ocn.ne.jp
< http://www.openspc2.org/
>
先週のデジクリ。齋藤浩さんの、わが逃走[91]の水戸黄門。確かに昔の方が(第5部あたりまで、かな)バリエーションが多く、まったく予定調和でないことも多く楽しめます。今見ても面白いです。黄門様が占い師になって、それを実現するため、屋根裏で弥七があたふたするようなのもあったり。なぜか、農作業を楽しむ黄門様とか。
それから、フィルムじゃなくてもSONYのハイビジョンカメラHDR-FX1あたりだと空気感が表現できます。でも、XF300とか最近の高性能なカメラになると、空気の存在感がなくなってしまい、のっぺらしか感じにはなります。
Panasonicのハンディカムもそうですが。NHKの大河ドラマ龍馬伝で使ったようなカメラなら別でしょうけど、今のは空気感をうまく映すのは難しいかなと思います。
デジタルリマスターの水戸黄門案には賛成。銭形平次や大岡越前などもデジタルリマスターして放送してもいいかもしれませんね。そう言えばロケ地が美しい(?)と言えば初期の戦隊モノも結構いいところ(ダムとか)撮影していた気が。
・改訂5版JavaScriptポケットリファレンス【発売中!!】
< http://www.amazon.co.jp/dp/4774148199
>
・10日で覚えるHTML5入門教室【9/14発売】
< http://www.amazon.co.jp/dp/4798124184
>
・毎度おなじみASCII.jpの連載
「第6回 PhoneGapでMapKitを使って地図アプリを開発」
< http://ascii.jp/elem/000/000/632/632694/
>
・Google API Expertが解説する HTML5逆引きリファレンス
< http://www.amazon.co.jp/dp/4844330349
>
・iPhone/iPad × HTML5アプリ制作
< http://www.amazon.co.jp/dp/4797362618
>
・ハイビジョン映像素材集
< http://www.openspc2.org/HDTV/
>
・Adobe Illustrator CS3 + JavaScript 自動化サンプル集
< http://www.openspc2.org/book/PDF/Adobe_Illustrator_CS3_JavaScript_Book/
>