ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript でブラウザで利用可能なフォントをプログラム的に一覧表示するにはどうすればよいですか?

JavaScript でブラウザで利用可能なフォントをプログラム的に一覧表示するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-26 11:04:15863ブラウズ

How Can I Programmatically List Browser-Available Fonts in JavaScript?

ブラウザでユーザーが選択できるフォントをリストする

問題:

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。