タグ

ブックマーク / d.hatena.ne.jp/gyuque (5)

  • MozRepl で画像のレンダリング位置を調べる - 最速チュパカブラ研究会

    最近、Webページをクローリングして画像を引っこ抜いたりしているのですが、そこで困るのが、一見すると一枚だけど複数のファイルに分割されている画像。 ↓こういうやつ (http://www.jewelpet.jp/) 多くの人が遅いアナログ回線で Web を見ていた頃は、体感速度を上げる効果があった、らしい。しかし、機械的に画像を収集するような向きにはえらい迷惑です。 そこで、クローラがブラウザ上でのレンダリング結果を見て、これらの画像は隣接して表示されているぞ、といった判断をできないかなーとぴろたんに尋ねてみたところ piro_or> っ [MozRepl] と、5秒で答えが返ってきました。MozRepl というのを使うといいらしいです。というわけで、MozRepl を使って Ruby のプログラムから Firefox のレンダリング情報を取得してみました。 mala さんによる MozR

    MozRepl で画像のレンダリング位置を調べる - 最速チュパカブラ研究会
    isdyy
    isdyy 2010/10/18
  • AutoCompletize - 最速チュパカブラ研究会

    こんなものを作っています(Alphaぐらい) ↓クライアント http://coderepos.org/share/browser/lang/javascript/userscripts/autocompletize.user.js ↓データベース http://wedata.net/databases/AutoCompletizeIndex/items http://wedata.net/databases/AutoCompletizeDic/items AutoPagerizeと同じように外部にDBを置いて、いろんなサイトに入力補完を後付けしようという話です。が、XPath式をサッと書くだけで対応が完了するAutoPagerizeに比べると、わざわざ辞書データを作ってくれる人がいるのかという問題がありますね。

    isdyy
    isdyy 2008/10/31
  • 正規表現ベースの字句解析器を書くときは - 最速チュパカブラ研究会

    正規表現ベースの字句解析器を書くときは、narcissusというJSベースのJS処理系のコードを見るといいです http://mxr.mozilla.org/mozilla/source/js/narcissus/jsparse.js 面倒な正規表現の模範解答が載ってます。下手に自分で考えて誤爆するより、一流の人が書いたものを使いましょう 正規表現リテラル /^\/((?:\\.|[^\/])+)\/([gimy]*)/ 文字列(ダブルクォート、シングルクォート共)/^"(?:\\.|[^"])*"|^'(?:[^']|\\.)*'/ → 訂正 Cスタイルコメント(一行、ブロック共) /^\/(?:\*(?:.|\n)*?\*\/|\/.*)/ ↓narcissusについてはyukobaさんのプレゼンを(去年のShibuya.es) http://accelart.jp/shibuyajs

    isdyy
    isdyy 2008/04/29
  • 最速チュパカブラ研究会 Experimental implementation of the CSS3 box-shadow

    たけんくんに誘われて、ここしばらく研究もそこそこに、Gecko 1.9へのbox-shadow実装のコーディングをやっていましたが、一応動くというところまで達したので報告しときます。以下の画像は、『我的春秋』さんのサンプルをこの実装で表示したものです。 フォントの関係でWebKitでの結果とは印象がかなり違いますが、とりあえず表示されるべきものは表示されています。 実装 shadow系のプロパティをいち早く実装してきたWebKitは、ソースが公開されているので、実装方法を直接確認することができます。 text-shadowのコードは以下のような感じ: box-shadowのコードは以下: 要はGraphicsContext::setShadowという関数がキモ。この実装はプラットフォーム毎に用意されていて、Mac OS Xの場合は、以下のコードに飛ばされます: CGというプレフィックスがつ

    最速チュパカブラ研究会 Experimental implementation of the CSS3 box-shadow
  • GeckoのReflowをアニメーションにする - 最速チュパカブラ研究会

    MDCの記事用にGeckoのReflow(レイアウトを組み立てる処理)の過程をアニメーションGIF↑にしましたが、これが思ったより良い画になったので、トゥイーニングをつけてムービーを作ってみました。 まず、みんなの好きなGoogle。あんまり面白くないです 続いてWikipedia。スクロールバーが出て表示域が狭まったために、サイズを再調整している様子が見えます。 最後に、Mozilla.orgのトップ。floatの扱いがよくわかります。ここでもスクロールバーの出現に伴う再配置が発生しています。 作り方は大体以下のような感じです 各frameのrectが変化したところで位置、大きさ、this pointer値および親のthis pointer値をログに書き出すコードをMozillaに仕込む Rubyスクリプトでログを舐めて、frame treeを再構成する もう一度最初からログを舐めて、各

    isdyy
    isdyy 2007/03/28
    すごい
  • 1