作ったもの Web ブラウザの仕組みを基礎から勉強したいと思い、「Let's build a browser engine!」の記事を参考に Deno で簡易的な HTML レンダリングエンジンを作ってみました。 簡易的という言葉の通り、実用性はないです。 HTML と CSS を入力として受け取り、Canvas にボックスを描画するだけです。 また、描画に対応しているものは、ブロック要素のレイアウトのみで、使える CSS もごくわずか。サイズ・位置指定(width、 height、padding、margin、border-width)と装飾(background-color、border-color)のみ。テキストの描画もできません。 ただ、ひとつひとつの過程を自分で実装していくので、レンダリングエンジンの仕組みを勉強するにはとても良いものでした。 本記事で実装するレンダリングエンジン