524studio.com
日々のうだつのあがらない呟き
 



Illustratorに貼り込まれた画像のサイズをリスト化する処理が必要となり、先週末からいろいろとトライしている。オブジェクトのプロパティからは幅と高さが参照できるのだが、どうやら回転がかかった場合は回転がかかった時の幅と高さになる模様。つまりオブジェクトの本来の幅と高さではなく、相対的な幅と高さということになる。

対応策としては「回転を外した状態にしてから幅と高さを求める」というのが素直な考えだが、残念ながら回転の値が存在しない。IllustratorのオブジェクトはInDesignやQuarkXPressのようにボックスの左上を基準とした座標値や回転値などから場所を割り出すのではなく、6つのマトリックスを用いた方法で表現しているようで、ここらへんになってくるとお手上げだった。

自力では無理そうだったので、とある掲示板に質問を書き込んだところ、いろいろな方からアドバイスをいただいた。どうやら関数処理をかけないといけなさそうなところまでは分かったが、AppleScriptには関数のためのコマンドは殆どない。たぶんJavaScriptかPerlを介さないといけなさそうだが、Javaなんて全く手をつけたことがない。

「もうダメだ」ということで先週末はそこで諦めてしまった。Illustrator用のJava教本が一冊だけ出版されているということで、日曜は市内の書店をあちこち探しまわった。後で知ったことだが、バージョン10の時に発刊されたものなので既に絶版。見つかるわけないわな。

今朝、会社に来て掲示板を覗いてみると、解答と言うべき完璧なスクリプトが書き込まれていた。曇った空から一筋の光が差し込み、神が舞い降りて手をさしのべてくれたようだ。解決策はAppleScritpでJavaScriptを呼び出し三角関数などの処理をさせる、というもの。別ファイルのスクリプトをサブルーチンとして読み込んだりはしてたけど、JavaScriptに直接引数を渡すことができるとは知らなかった。凄い。

作りかけのものに継ぎはぎしながら組込んでいき、どうにかこうにか完成することができた。ただJavaScriptで作成しておけばMac/Windowsの環境を問わず動かせるようなので、「いずれは手をつけねば」と思いながらWindowsの課長さんのところへ行くと、彼の書棚に探しまわっていた本があるではないか。これにはビックリ。「買っただけであまり使ってない」とのことで早速拝借。これから時間をみつけては勉強してみることにしよう。

コメント ( 0 ) | Trackback ( 0 )


« 写真集 今日覚えた事 »
 
コメント
 
コメントはありません。
コメントを投稿する
 
名前
タイトル
URL
コメント
コメント利用規約に同意の上コメント投稿を行ってください。
数字4桁を入力し、投稿ボタンを押してください。