fn looks_like_woff2(bytes: &[u8]) -> boolExpand description
@font-faceで参照されたフォントを実行時に登録する。TTF/OTF以外(WOFF2等)は
安全にfalseを返して拒否する(ttf_parser側でも不正な形式はErrで弾かれ
クラッシュしないが、シグネチャの時点で早期に判定した方が無駄なパースを避けられる)。
同じfamily名で複数回呼ばれた場合は後勝ちで上書きする。
GLOBAL_VECTOR_FONTのプライマリを新フォントへ切り替える(set_primary。
旧プライマリはフォールバックへ退避するため既存のグリフカバレッジは失わない)。
この処理系はまだ要素/ノード単位のfont-family対応フォント選択
(kernel/draw.rsの描画箇所・幅計測箇所すべてに手を入れる大規模な
レンダラ統合が必要)を実装しておらず、それを安全に完成させるにはページ全体の
テキスト描画・幅計測の整合性(描画に使うフォントと幅計測に使うフォントが
常に一致していないと文字が重なる既知の脆さがある)を壊さないよう慎重な
段階的実装が必要と判断し見送っている。代わりに「取得できたWebフォントを
ページ全体の主要フォントとして採用する」という単純だが安全な戦略を採る
(draw.rs/render.rs側の変更が一切不要で、既存のグローバルフォント経由
の描画・幅計測パイプラインをそのまま使い回せるため、描画と幅計測の
不整合が原理的に発生しない)。将来的に複数の@font-faceファミリーを
要素ごとに使い分ける必要が生じた場合は、別途font-family対応の
レンダラ統合に着手すること。2026-07-22実装。
バイト列の先頭シグネチャからWOFF2かどうかを判定する。