6

非常に簡単ですが、私はいつも疑問に思っていました。インターネットブラウザはOS API関数をレンダリングしてボタンを作成したり、メイジをレンダリングしたりするのですか、それともすべてを独自にレンダリングするのですか?

最初はシステムAPIを使用していると思いますが、画面が灰色にフェードして中央に小さなウィンドウしか表示されない場合など、いくつかの効果があります。この効果は、オンラインの多くの写真アルバムで使用されています。たとえば、Win32呼び出しのみ。

編集:より正確には、画面上の最終的な描画は常にシステムAPIを使用することを知っていますが、事前にレンダリングされた画像を必要に応じて送信できます。ありがとう。

4

2 に答える 2

5

Webブラウザーは、OSAPIではなく独自のレンダリングエンジンを使用します。OS APIを使用してボタンをレンダリングすることは、特定のレンダリングエンジンの設計上の決定に完全に依存します。ただし、さまざまなオペレーティングシステムで実行するために、これらのエンジンは、プラットフォーム間で同じルックアンドフィールを提供する独自のレンダリングを好みます。

参照: http: //en.wikipedia.org/wiki/Web_browser_engine

于 2010-08-28T13:31:42.437 に答える
1

ブラウザレンダリングエンジンは、ボタンの作成、テキストの書き込み、ボックスの作成などにOs apiを使用しますか、それとも実際にレンダリングされた画像を画面に表示するためだけにOS APIを使用してこれらすべてを独自にレンダリングしますか?

ブラウザレンダリングエンジンのようなものを実装しました(サポートされているHTML要素とCSSプロパティのリストについては、サポートされている要素とサポートされているプロパティの表などを参照してください)。

システムAPI(.NET Framework API、基盤となるO / S GDI APIの薄いラッパー)を使用して、次のことを行います。

  • 助数詞(テキストの文字列)
  • 言葉を描く
  • 線とボックスを描く
  • 長方形を単色で塗りつぶします

これらは、WindowsGDIによって実装される一種のAPI機能です。

ボタンやコンボボックスを描画するために使用するシステム(O / Sまたは.NET)APIもいくつかあります(編集、コンボなどの標準コントロールの書き換えを参照してください)。

なぜなら、テキストやグラフィックスなどのレンダリング全体を自分で完全に書くのはかなり難しいようです

はい、CSSの実装には時間がかかります。ブラウザ開発者チームが実装するのにどれくらいの時間がかかったかを見てきました:数暦年、何人年。

于 2010-08-28T21:55:44.913 に答える