<< 2024/04 >> | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
|
HTMLレンダラー 構造解析
07/11/30 05:41 / ブラウザ
先日のバージョンから全面的に作り直していたりします。
前のバージョンはHTMLをシーケンシャルに読み込んで処理を行っていましたが、どうにも画像やレイアウト関連(Wordwrapやセンタリング)にムリがあります。 特にレンダリング速度が余りにも遅いので、以下のように処理を変更しました。 1)HTMLの構文を解析する。 基本処理です、タグとそれ以外に分離したりしています。 2)1の結果を構造化する。 実際に表示されるのはテキストや画像ですが、その前後のタグにより位置が変わったりと様々な処理が行われます。 シーケンシャルに処理をしていたのではムリがありますのでこれを構造化しておきます。 span タグの中にあるテキストとか、align で位置指定がされているとかです。 3)レンダリング用に構造を計算&最適化する。 前のバージョンはレンダリング速度が非常に遅く(平均300ms)フォームのサイズを変更したりすると使い物にならなかったので、レンダリング専用の処理を追加しました。 この処理で各オブジェクトの位置情報やサイズ等を計算しておきます。一番面倒な処理です。 4)実際にレンダリングする。 3の結果を使ってレンダリングします。基本的に計算は全て終わっていますので、それに従って出力していくだけです。 4パスで処理をするようになっていますが、設計書もなにもなくいきなりコーディングしていますのでハードなコーディングになっています。やれやれです。 ここでOSに依存するのは4だけになりましたので、他のプラットフォームへの移植も簡単になると思います。やりませんが。 [更新日付:2007/11/30 05:41:41]
トラックバックを見る(0) Log Link [https://akisoftware.com/cgi-bin/blom.exe?akisoft+sl+e8d8c94d2c47387d7f008393efebe06cb638a0b7] TB Link [https://akisoftware.com/cgi-bin/blom.exe?akisoft+tb+e8d8c94d2c47387d7f008393efebe06cb638a0b7] 記事へのコメント コメントはありません |
@AKISoftOfficialをフォロー
掲示板 サポートBBS PMailServer BBS アクセスの多い記事
最新記事(カテゴリ別)
PMailServer2 Version 2.53 をリリースしました。
04/08 00:50 フリー版からの製品版移行時の MTA 並列数について 02/17 23:52 メールサーバーの開発を始めて20年 02/07 21:46 PMailServer2 Version 2.52a をリリースしました。 12/26 14:02 PMailServer2 Version 2.52 をリリースしました。 10/01 10:48 PMailServer2 Version 2.51b をリリースしました。 09/19 01:43 PMailServer2 Version 2.51b(仮) Memo 09/12 00:33 PMailServer2 Version 2.51a をリリース、及び脆弱性についてのお知らせ 09/05 01:15 PMailServer2 Version 2.51a Memo 08/21 00:48 アドレスV125(K5)のスターターリレーの交換 08/04 10:10 最新コメント
コメントはありません
UUアクセス数
今日は 107回
昨日は 286回 トータル 303695回 3ヶ月記事別ランキング
プロフィール
Z80から68系、8086系を経由して
Pascalに移行。現在は Delphiをメインに C/C#も囓ってみたり。 「無い物は作れ」の精神で年がら年中なにかを作っています。 すぐ自前で作りたがるので無駄に工数が上がったりして自爆してみたりもします。 好きな物は麺類とお煎餅 Blom内検索
BLOM Version 1.39 ©2007-15 A.K.I Software all rights reserved. |