WOFF2ウェブフォント (.woff2)
W3C勧告(2018) 標準Web Open Font Format 2.0(WOFF2)は、GoogleのBrotli圧縮アルゴリズムとカスタムフォントテーブル前処理を利用して、最新のWebで最高速度と最小のファイルサイズを実現する、Webタイポグラフィの主要なグローバル標準です。
TTF を WOFF2 に変換
無料のブラウザ内 TTF から WOFF2 へのコンバーター。お使いのデバイスでファイルを即座に変換します。
調査とメタデータ
オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査してWOFF2ファイルを識別します:
バイトレベルのヘッダーシグネチャ (マジックバイト)
オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査してWOFF2ファイルを識別します:
16進数シグネチャ(オフセット0):
77 4F 46 32ASCII表現: wOF2
標準化: W3C勧告(2018)
技術仕様
| コンテナアーキテクチャ | 48バイトのWOFF2ヘッダーに続き、テーブルディレクトリ、Brotli圧縮フォントデータストリーム、オプションのメタデータを格納 |
| 圧縮 | Brotli圧縮と専用の字形テーブル変換('glyf'と'loca'の事前調整)を組み合わせ |
| バイトエンディアン | ビッグエンディアンのヘッダー/Brotliビットストリーム |
| 色空間 | COLRv0、COLRv1、OpenType-SVG、CBDTカラー絵文字 |
| チャンネルと構造 | TrueTypeまたはCFFのアウトライン、可変フォント軸、レイアウトテーブル、カラー絵文字 |
| 最大寸法 | フォントファイルあたり最大65,535字形 |
| 透過性 | カラー絵文字およびSVGフォントテーブルで透明度を完全サポート |
| ストリーミングとプログレッシブ | 高速なHTTP/2およびHTTP/3多重化向けに設計された超小型の単一ストリームBrotliペイロード |
技術比較表:WOFF2と競合製品
| 技術属性 | WOFF2 (現在) | WOFF | TTF | OTF |
|---|---|---|---|---|
| 圧縮効率 | 最高(Brotli + テーブル変換) | 中程度(zlib圧縮) | なし(非圧縮) | なし(非圧縮) |
| マジックバイト | wOF2 (0x77 0x4F 0x46 0x32) | wOFF (0x77 0x4F 0x46 0x46) | 0x00 0x01 0x00 0x00 | OTTO (0x4F 0x54 0x54 0x4F) |
| 主な用途 | 最新のWebタイポグラフィ(@font-face) | レガシーWebタイポグラフィ | デスクトップオペレーティングシステム | デスクトップ印刷およびプリプレス |
| 一般的なファイルサイズ | 15 KB - 40 KB(超コンパクト) | 25 KB - 60 KB | 40 KB - 120 KB | 40 KB - 120 KB |
一般的な破損モードと16進数リカバリガイド
ブラウザがフォールバックシステムフォントを表示し、「OTS解析エラー:WOFF2ストリームの解凍に失敗しました(OTS parsing error: Failed to decompress WOFF2 stream)」をログに記録します。
根本原因: 破損したBrotliビットストリーム、またはWOFF2ヘッダーでの未圧縮フォントサイズの宣言の不一致。
復旧: File2File.app WOFF2コンバーターを使用してフォントを再エンコードします。
セキュリティ分析とパーサー攻撃ベクトル
WOFF2ファイルはブラウザのレンダリングエンジンによって直接デコードされるため、メモリ破損を防ぐためにOpenType Sanitizer(OTS)を介してサニタイズする必要があります。
既知の攻撃ベクター
- 再構築されたテーブルオフセットの計算中の整数オーバーフロー。
- Brotli解凍ストリームでのバッファオーバーリード。
- 「glyf」テーブルの逆変換処理中のメモリ破損。
防御的ベストプラクティス: WOFF2 ストリームのヘッダーを検証し、メモリ安全な Brotli デコーダーを採用してください。
歴史的背景とマイルストーン
主なメリット
- 広く使われているWebフォント形式で、WOFF 1.0や生のTTFより小さなファイルになることがよくあります。削減量はフォントとエンコーダーによって異なります。
- 現在の主要ブラウザーでサポートされています。古いブラウザーでは代替形式が必要な場合があります。
- カスタムフォントテーブルの変換により、グリフの座標と境界ボックスが再構築され、Brotliのエントロピー圧縮が最大化されます。
技術的な制限とデメリット
- デスクトップオペレーティングシステムに直接インストールすることはできません(TTFまたはOTFへの変換が必要です)。
- Brotli圧縮レベル11の最適化のため、エンコードには多大なCPU時間が必要です。
- 複雑なテーブル再構築アルゴリズムには、専用のデコードライブラリが必要です。
興味深い技術トリビア
- Googleは、インターネット全体に対して毎日数十億件のフォントリクエストを提供するGoogle Fontsを高速化するために、WOFF2を特別に作成しました。
- WOFF2は単にフォントを圧縮するだけでなく、圧縮前に「glyf」および「loca」テーブルを積極的に変換して、冗長な座標予測データを取り除きます。
- あらゆる最新のWebサイトのネットワークタブを検査すると、読み込まれるカスタムフォントのほぼすべてがWOFF2形式です。
よくある技術的な質問
WOFF2 がWebサイトに最適なフォント形式である理由は何ですか?
WOFF2はBrotli圧縮とフォントテーブル変換を使い、WOFFや生のフォントファイルよりサイズを縮小できる場合があります。削減量はフォントとエンコーダーによって異なり、古い環境ではブラウザーの対応状況も異なります。
コンピューターにインストールするために WOFF2 を TTF に変換できますか?
はい!Webブラウザ上で File2File.app を直接使用すれば、数秒で任意の WOFF2 フォントをインストール可能なデスクトップ用の TTF または OTF フォントに変換できます。
すべてのモダンWebブラウザが WOFF2 をサポートしていますか?
はい。すべてのモダンブラウザ(Chrome、Safari、Firefox、Edge、iOS Safari、Android Chrome)が2018年以降、WOFF2 をネイティブサポートしています。