Rustで書かれたKosmonautブラウザエンジンが導入されました

プロジェクトの枠組みの中で 宇宙飛行士 完全に Rust 言語で記述され、Servo プロジェクトの開発の一部を使用したブラウザ エンジンが開発中です。コード によって配布 MPL 2.0 (Mozilla パブリック ライセンス) に基づきます。レンダリングには OpenGL バインディングが使用されます。 gl-rs Rust 言語で。ウィンドウ管理とOpenGLコンテキストの作成はライブラリによって実装されています グルチン。コンポーネントはHTMLとCSSを解析するために使用されます html5ever и cssparserプロジェクトによって開発された サーボ.
DOMを操作するためのコードはプロジェクトの開発に基づいています 朽木HTML/XMLを操作するためのライブラリを開発しています。使用されたプロジェクトの中には、実験的な Web エンジンも挙げられます。 Robinson約5年間、半放棄状態となっていた。

現在の開発段階では、基本的な HTML サポートと限られた CSS 機能セットが提供されていますが、これでは最新のページのほとんどを表示するには不十分です。それにもかかわらず シンプルなページ CSS を使用した div では正しくレンダリングされます。このプロジェクトはもともとブラウザエンジンの開発プロセスを教えるために 1 年前に設立されましたが、現在はその応用のための新しいニッチを見つけようとしています。

すでに実装されているもの:

  • HTML 解析、CSS サブセット、カスケード CSS、DOM モデル。
  • ページレンダリング、コンテンツのブロックレイアウト。
  • 要約の部分的なサポート ボックスモデル およびプロパティ」方向"
  • 表示される要素のツリーを含むデバッグ ダンプを生成します。
  • 高 DPI ディスプレイのカスタム スケーリング ファクターのサポート。
  • FreeType ライブラリを使用してテキストをレンダリングします。
  • サポート フローレイアウト、コンテキストに応じたインライン書式設定とレンダリング。

出所: オープンネット.ru

コメントを追加します