こんにちは。
AppleScript、InDesign、JavaScript、VBscript、PHPなんかについて書いていきます。
そのうちHPにサンプルでもあげるかも。
|
InDesignでJavaScript素人講座 その8
Googleで「InDesign JavaScript」で検索すると、結構いろいろな方がチャレンジされているようです。 自分より有用なものを書かれている方をみるとちょっぴりへこみます。 では、その8スタートです。 今回は「実際に受注された仕事をどうやって効率的にスクリプトで組んでいくか」をテーマにして書いていきます。 例として名刺を作るお仕事を受注したとしましょう。 受注内容としては「異なるデザインで10種類作り、数ヶ月ごとに追加発注」というもの。 現実にそんな仕事があるかどうかはわかりませんが、ものの考え方として捉えてください。 テキストは先方から統一フォーマットで作られたExcelで支給され、1人1列で必要な要素が記入されています。 要素は、会社名、役職、名前etc.です。 10種類のデザインで使う要素は同じだけどオブジェクトの位置やサイズ、フォント、文字修飾等はそれぞれが異なります。 さて、上記のような仕事をあなたならどのように進行しますか? この講座を読んでくださっているくらいだからきっとJavaScriptでやろうと考えるはず、そこまで思い切れなくても漠然と「手作業は嫌だな」ぐらいには考えるはずです。 そこでこの仕事を受注したとして私ならどうやって進めるか書いてみましょう。 1. 流し込むテキストを作る 支給されたエクセルを加工して流し込むテキストを作ります。 今回は統一されたフォーマットで毎回入稿されますから、一度整形したエクセルをテキスト整形フォーマットとして流用していきます。 あれこれ整形処理をしたあと、最後にエディタに持っていって、完成。 2. フォーマットを起こす 私の場合、納期短縮のため&スクリプト制作に時間をさくため、事前に他人にお願いしておきます。 ただデータとして起こしただけなのでいろいろ仕込む必要があります。 仕込む内容としては ●10個のフォーマットを1つのファイルにしてマスター化(1つのファイルにマスターが10個) ●テキストが流し込まれる部分はすべてスタイルを適用(文字スタイルも作っておくと後で楽です) ●カラーをスウォッチとして登録 ●オブジェクトにスクリプトラベルを付ける(同じ要素のオブジェクトは全フォーマットで同じラベル名にする) などなど。 3. JavaScriptを組む 2で作ったフォーマットを見ながら仕上がりを想像しつつJavaScriptを組んでいきます。 私の場合最初は予定の70%ぐらいの出来の、まずちゃんと動くものを目指して組んでいきます。 残りの30%は残った時間と手間を鑑みて調整していきます。 90%ぐらいなら上出来だと考えておくのが、過度にJavaScriptに期待して挫折しないコツだと思います。 120%ぐらいのものができて自画自賛できる楽しみも残りますし(笑) いままで散々書いてきましたが「なんか動かないんだけど」というときはスペルや頭小文字になっているか確認してください。 文法は簡単な部類の言語なので相当とんちんかんな人でない限り文法ミスってことはないと思います。 ExtendScript Toolkitも叱ってくれますしね。 あとはIF文やwhile文などは条件分岐がちゃんとされているか確認するためにこまめにalert()を入れて確認することがキモですね。 さてこの工程で一番大事なこと。 『テキストフレームや画像フレームに同じラベル名をつけておけばまったく同じスクリプトですぐに10種類の名刺ができあがります』 だからスクリプトは一個しか作らなくてOK! 4. ポチっとする InDesignのパレットから作ったJavaScriptをポチっとしましょう。 これで10種類の名刺が流し込まれ、あとは手動で微調整が必要なことがあれば直して完成です。 どうですか? 簡単でしょ? フォーマットとテキストに共通のルールさえ持たせれば、全然違うデザインのものがすぐに作れちゃうんですよ。 楽しくないですか? その後の展開として ●10種類作った後に「やっぱフォントは同じフォントで統一したい」と言われても同じスクリプトでさくっと終わります ●「写真を入れたい」と言われてもスクリプトを一個作って10種類に合わせた座標値を実行前に入れるだけでOK ●同じテキストを利用&簡単な自己紹介の書かれた新テキストが支給され「新人歓迎用のカード的なものが作りたい」と言われても名刺と同じ構成で作っておけば自己紹介の部分の処理を加えるだけですぐに完成 すごく簡単な例ですが実際私の仕事ではこんな感じで動かしてます。 上記の「その後の展開として」の3番目のようなお仕事で私は月100万程度稼いでいます(その後の修正作業などもありますが) 制作作業で一番時間のかかるであろう新規組版をさくっと終わらせることができれば利益率もぐっとあがりますよね。 QuarkXpress+AppleScript時代には「こんな機能がないからできない」「処理を多く書きすぎて実用的じゃない」なんて思って悶々としてましたが、いまでは逆に「スクリプトの中身はシンプルに」「処理は関数化して速度を犠牲にしても他の業務に転用できるように」って考えて書いてます。 スクリプターにはデザイナーと違ったデザイン力が必要だと思いますね。 「現実的じゃないところは切り捨てて手でやっちゃおう」って心意気が上達の秘訣と私は思います。 ここら辺はブログで書いてたり書いてなかったりしてますが。 こんな感じでその8はおしまいです。 その9のネタはまだ未定です。 |
|
| ホーム |
|

