JavaScript

Illustrator:アクセスできないプロパティ?

2008/03/14 金曜日 - 19:33:54 by decama

サイト構築が煮詰まってるので、気分転換を兼ねてイラストレータの作業自動化スクリプトを組んでみた。

レイヤーロック解除
非表示レイヤー削除
オブジェクトのロック解除
隠したオブジェクトの削除
テキストのアウトライン化
オブジェクトのカラーモードをCMYKに
シングルポイントのパスを削除
EPS保存

これを一気にやってくれるスクリプトを組んでみたけれど、どうにかできそうもない状況に陥ってしまったっぽい。
テキストをアウトライン化すると、グループ化された複合パスが生成される。単純なテキストなら問題ないのだけれど、アピアランスが設定されていた場合、おかしな状況になる。
オリジナルのテキストに設定されていたアピアランスが、生成されたグループに設定されてしまう。グループそのものに塗りとストロークの設定が存在してる。
ところが、javascriptからアクセスできるGroupItemのプロパティには、塗りやストロークのプロパティは存在しない。
変換できないプロパティがのこってしまうんだな。
どうしよう??

Cometすごいかも。

2007/04/27 金曜日 - 21:20:31 by webmaster

あ、久しぶりの更新になってしまった。なんだかいろんな業務が一気に集中して動いてる。もー、自分でも収集つかないくらいに。
それでも、動かしてかないと、先に進まない。先に進めるということは、集中を加速することでもあったりする。
うーん。
自分の業務をアウトソースしてくれることになったので、手は軽くなった。でも、楽にはなってない。(笑)
ちょっと空いた時間をつかって新しいネタを探してたら、既に新しくは無いけれど知らなかった「Comet」に行き着いた。
発想の転換というか、言われてみれば、「あぁなるほど!」ってことなんだけど、この実装はスゴイ。
ちょっと機会があったらどっかで使ってみたい技術だなぁ、これは。
(でも、どうやらjavaの組み込みは避けられ無さそうだけども。)

prototype.js その後

2006/12/26 火曜日 - 22:01:00 by webmaster

というわけで、今回の開発案件ですっかりprototype.jsのお手軽さにやられてしまいました。これの怖いところは、ろくすっぽ理解してなくても、「なんとなく」使えちゃうところ。
このままじゃアレなので、せっかくだからちゃんと理解しときましょ。<自分
せっかく急いで作ったのに、年末進行の影響ですっかり後回しになってしまった。

prototype.js その2

2006/12/07 木曜日 - 16:45:30 by webmaster

というわけでprototype.jsを使ってコードを書いてるわけだけど、ヤバイね、これ。
簡単過ぎて考えなくなっちゃいそう。どっかに境界線を引いておかないといかんなぁ。
あっという間に依存しかけてる自分がいたりして。うーん。

prototype.js

2006/12/06 水曜日 - 12:39:06 by webmaster

なんとなく使わなかったprototype.jsを今回使わなきゃならなくなった。前回のエントリで触れたrico.jsがprototype.jsに依存してるからだ。
そう、この依存がなんとなくイヤだったから使わなかったんだな。(笑)
とりあえずいい機会なのでなるべくなら理解してしまおう。

Rico

2006/12/01 金曜日 - 21:33:11 by webmaster

データベースのテーブル内のデータを操作するのにフォームによる文字入力ではなく、マウスでの直感的操作が必要な案件が最優先で入ってきた。
データ側の操作は(おそらく)大した問題ではなかろう。問題になるのはインターフェースだ。
javascriptでいこう、と思って使えそうなライブラリが無いか調べてみた。
Rico
これでイケそう。

1px dotted borderをInternetExplorerで

2006/11/18 土曜日 - 14:48:58 by webmaster

mixiのcssコミュにあがったトピックに反応してしまう。

他にやらなきゃいけないことがいっぱいある、っちゅーのに。

javascript:function closure その2

2006/11/02 木曜日 - 21:11:15 by webmaster

closureを使って、イベントドリブンな関数に関数オブジェクトのプロパティを参照させることはうまくいったけど。
関数オブジェクトと同時にイベントオブジェクトも渡そうと思ったらどうすればいいんだ?
addEventListenerでイベントをfunctionに渡す場合、引数を指定しなければ、イベントが引数に渡される。
んじゃ、ってんで他のオブジェクトを引数指定すると、イベントが参照されない。
うーん。
ここを参考にさせてもらいました。
要はイベントに対する処理を多重登録すればいい、ってこと。
最初の処理でイベントをwindow.eventに退避させ、次の処理でオブジェクト自身からwindow.eventを参照すればいい。
本家のマウスホールズームに近い機能をこれで追加出来ます。⇒出来ました。

javascript:function closure

2006/10/31 火曜日 - 23:24:15 by webmaster

この前のエントリで書いたjavascriptのイベントとthisの問題は、closureで解決すればいいのね。

function GSmapsc_methodClosure(object, method, opt_argArray) {
  return function() {
    return method.apply(object, opt_argArray);
  }
}

前にも書いたここのソースを読み込んでみたら、こんな処理をしてました。
で、closureでググってみたら、自分はもうこの問題に接してたってことに気がついた。このエントリは1年以上前に読んでたのに。
わからないことでもスルーしないようにしないと。<自分
これでこないだのマウスホイールズームもプラグインに組み込めるかな?
そこまで行けたら、とりあえず公開しよう。
(本家のマウスホイールズームが先にAPIに下りてきたりしてね。)

javascriptって

2006/10/26 木曜日 - 13:41:05 by webmaster

奥が深い。
ブラウザがDOMオブジェクトをどんな風に扱ってるかとか、その辺りまで理解しとかないと、きちんと使いこなせないような気がする。
(ただ単に自分の頭が固いだけ、っちゅう話もあるが。)
EventListenerにfunctionオブジェクトのプロパティを登録したときに、thisはfunctionオブジェクトではなくイベントが発生したオブジェクトを参照する。
ってことは、イベントドリブンな関数に関数オブジェクトのプロパティを参照させるにはどうすりゃいいの?
この辺りをきっちりと整理して理解しとかないと、キレイなコーディングが出来ない。