問題:
Web 開発では、次のようなニーズが発生することがあります。ブラウザで表示できるフォントのドロップダウン リストをユーザーに提供します。ハードコードされたデータやサーバーが取得したデータに依存せずに、JavaScript でこのリストをプログラム的に取得するにはどうすればよいですか?
解決策:
JavaScript を使用したフォントの検出
幸いなことに、JavaScript は、Web 上で利用可能なフォントを検出する手段を提供します。ユーザーのシステム。次のスニペットを実装できます:
var detector = new Detector(); // Function to detect if a font is available function detectFont(font) { return detector.detect(font); } // Get the list of detected fonts var availableFonts = []; for (var font in detector.detectFonts()) { if (detectFont(font)) { availableFonts.push(font); } } console.log(availableFonts);
これにより、ブラウザが表示できるすべてのフォントの配列が記録されます。
コードの説明
Detector クラスは、「フォント フィンガープリント」と呼ばれる技術を使用して、特定のフォントを一連の基本フォントと比較し、それが利用可能かどうかを判断します。これは、フォントでレンダリングされたテキストの幅と高さを測定し、それをベース フォントでレンダリングされたテキストの測定値と比較することによって実現されます。測定値が異なる場合は、特定のフォントが存在することを示します。
追加情報
フォント検出方法は、次のような追加のアプローチを使用してさらに改善できます。システム内のフォント ファイルを使用するか、Flash または Canvas を使用してテキストをレンダリングします。ただし、これらのメソッドは JavaScript のネイティブ フォント検出ほど信頼性がありません。
以上がJavaScript でブラウザで利用可能なフォントをプログラム的に一覧表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。