Chrome 97は、1月初旬に安定したチャネルにヒットし、ユーザーのプライバシーを侵害しすぎたためにAppleとMozillaによって拒否された更新されたキーボードAPIなど、多数の新機能をもたらしました。4週間の開発サイクルの後、本日Chrome 98がリリースされるのを楽しみにしています。それほど議論の余地はありませんが、1つの機能が際立っています。
Chrome 98では、COLRv0の進化形であるCOLRv1カラーグラデーションベクトルフォントのサポートが追加されました。それらは、非常に小さいフォントサイズでも、グラデーション、構成、変換、マルチカラーの文字の形で、より表現力豊かな視覚的可能性をもたらします。Googleは、WOFF2圧縮後に1.85MBのCOLRv1フォント形式を使用して能登カラー絵文字をレンダリングできることを誇っています。一方、標準のビットマップフォントは、同じ絵文字で9 MBを使用するため、大幅に改善されています。
他の新しいブラウザ機能と同様に、シームレスな相互互換性を確保するために、他のWebブラウザベンダーやWeb開発者のサポートを利用することが重要です。MozillaとWeb開発者は新しいベクターフォントのサポートを発表しましたが、AppleWebKitとCoreTextチームはこの提案に否定的な反応を示しました。彼らがCOLRv1に反対する理由は次のとおりです。
- 彼は車輪を再発明します。この新しいフォーマットは、他の汎用2Dグラフィックスシリアル化フォーマットと同じように表現力豊かで強力です。汎用2Dグラフィックス用の既存のシリアル化形式は多数あります。
- まだ存在していません(Chromeの開発構成以外)。OT-SVGは、表現力豊かでありながら、DirectWrite、Core Text、Firefox、および多くの(ほとんど?すべて?)Adobeクリエイティブアプリにすぐに実装できます。多くのOT-SVGフォントがすでに存在します。
- このオファリングはChromeの外部にはまだ存在しないため、既存の開発ツール内にエコシステムはありません。逆に、多くの設計ツールはすでにSVGをエクスポートしています。
- OT-SVGとこの新しい提案の両方をサポートすることで、すでにサポートしているフォーマットよりも表現力のないフォーマットのメンテナンス負担が2倍になります。
- OT-SVGとこの新しい提案の両方をサポートすると、バイナリのサイズが大きくなります。バイナリサイズの追加の増加は、OT-SVGの実装以降に見られたバイナリサイズの増加とほぼ同等であると予想されます。(OT-SVGにはXMLパーサーが含まれていますが、WebKitはすでにXMLパーサーと通信しているため、この新しい提案のサイズは、OT-SVGの実装以降に見られたサイズとほぼ同じになると予想されます。この提案には独自の新しい提案が必要です。コード。解析/オーバーフローの検出/解釈。)
- OT-SVGとこの新しい提案の両方のサポートにより、ベクターカラーフォントに対するセキュリティ攻撃の表面積が約2倍になります。
- SVGではなくこの提案のみをサポートするエンジンを与えられたとしても、XMLの非推奨が新しいバイナリ形式と比較してセキュリティバグを減らすという証拠は見られません。歴史的に、WebKitでは、不透明なバイナリ形式(画像形式など)には独自のセキュリティバグがたくさんあることに気づきました。
- 仕様は2500行を超え、images / specディレクトリには77の図が含まれており、この提案の実装は1つだけです。それは十分に複雑なので、機能的に実装できるかどうかはわかりません。描画操作の動作がSkia固有であり、CoreGraphicsに実装するのが困難/不可能である可能性があることを懸念しています。たとえば、一見したところ、この提案の放射状グラデーションをCoreGraphicsに実装できるかどうかはわかりません。私たちの知る限り、この提案は多くの独立した利害関係者によって厳密に標準化されていません。
- ビットマップデータをカラーフォントテーブルに埋め込むことは今日では一般的ですが、この新しい提案では、そのベクトル機能が汎用の2Dグラフィックスシリアル化形式と同じくらい表現力があるにもかかわらず、これを許可していません。したがって、今日のカラーフォントの最大の欠点の1つと考えられている、カラーフォントテーブルの断片化の状況は実際には改善されません。
とにかく、COLRv1フォントフォーマットはChrome98でサポートされます。
さらに、Chrome98にはその他の小さな改善と機能強化が含まれています。鍵交換用のSimpleData Encryption Standard(SDES)も、「履歴」と呼ばれ、セキュリティ上のリスクがあるため、段階的に廃止されています。
CSSメディアクエリは、Web開発者がHDRディスプレイを自動的に検出し、それに応じてコンテンツを表示するためにも使用できます。色を設定するために、唯一のキーワードがCSS配色仕様に再導入されました。
パフォーマンスと開発の容易さを潜在的に改善する代わりに、「ClipboardItem」オブジェクトのPromiseサポートが一部のユースケースに追加されました。さらに、開発者はself.structuredClone()メソッドを使用してクローンを作成して移動することもできます。混乱を避け、標準仕様との互換性を確保するために、一部のポップアップAPIも変更されています。
ストリーム書き込みをすぐに終了できるようになりました。また、クロスオリジンリソースシェアリング(CORS)の事前要求をプライベートネットワーク上のターゲットサーバーに送信して、サブリソースにアクセスする前に最初に明示的にアクセス許可を要求することもできます。別の手法を使用すると、開発者は、親ディレクトリを最初に取得する代わりに、ファイル記述子を使用してファイルを簡単に削除できます。
しかし、それだけではありません。DevToolsforChrome 98にもたくさんの新しい機能があります。必ず、ここでそれらすべてをチェックしてください。
Chrome98は今夜展開を開始します。1日以内にバージョン98に自動的に更新されない場合は、[ヘルプ]> [Google Chromeについて]に移動して、更新が利用可能になり次第アクティブにします。次はChrome99で、2月3日にベータ版がリリースされ、3月1日に安定版がリリースされます。
コメントを残す