0

Unicode Character-specific CSS に関する私の質問によると、私は良い解決策を得ました: unicode-range、しかし実際には実際には機能していないか、目に見える変更なしに機能しています。

そして、埋め込み可能なフォントのインデックスを作成するために、Paul Irish によるBulletproof @font-face Syntax Tutorialに従いました。どういうわけかフォントを埋め込んでいますが、正しくはありません (私の問題は Bānglā フォントに固有のものです)。ブラウザでフォントを設定すると、フォントの完璧なサイズとグリフ ビューが得られます。しかし、フォルダーから特定のフォントを削除すると/windows/fonts、埋め込みはテキストを正しいサイズで表示しません。したがって、実際のfont-sizeプロパティは私の問題です。

Bānglā フォントがブラウザのデフォルトであるかどうかを検出できれば、小さいフォントを読み込みます。そうでない場合は、大きいフォントを読み込みます。

では、ブラウザで有効になっているデフォルト フォントを検出することは本当に可能でしょうか?

編集

私のライブ サイトはdev.nanodesignsbd.comです。@font-face の防弾構文のバグを見つけるのに役立つなら。そして、添付の画像は私のために話します: 私が欲しいもの 私のフォント

そして、それはブラウザのフォント設定でのみ行うことができます. :(

4

3 に答える 3

3

PHP はサーバー側言語であり、Web サーバー上で実行されます。ユーザーの Web ブラウザーを制御することはできず、実際にフォント (またはそれ以外のこと) を特定することはできません。クライアント側のものを扱うには、JavaScript が必要です。とはいえ、JavaScript を使って確実にフォントを判別することも不可能だと思います。

于 2013-10-31T18:57:38.300 に答える
1

通常、既定のフォントは CSS を使用して<body>または<html>タグに配置されます。これらは、ブラウザの設定でデフォルトで定義されています。PHP で指定されたブラウザーの既定値を取得する唯一の方法は、サポートする各ブラウザーと各言語の既定値を確認することです。次に、ユーザー エージェント文字列を解析して、どのデフォルトを配置する必要があるかを確認する必要があります。

前述したように、ブラウザーはこれらのフォントを CSS で定義するため、最善の解決策は PHP ではありません。代わりに、JavaScript を使用して、ページの読み込み後にデフォルトのフォントを確認できます。

getComputedStyle()次のようにしてこれを行うことができます:

HTML タグの場合

window.getComputedStyle(document.body.parentNode);

ボディタグ用

window.getComputedStyle(document.body);

これらは、ブラウザ用に計算されたスタイルの配列を返します。

お役に立てれば!

于 2013-10-31T18:59:33.170 に答える
0

PHP を使用すると、ブラウザに関する情報を取得できます。フォントに関する情報はありません。

http://php.net/manual/en/function.get-browser.php

これは、得られる最もプラットフォーム固有の情報だと思います。

$browser = get_browser(null, true);
print_r($browser);

Array
(
    [browser_name_regex] => ^mozilla/5\.0 (windows; .; windows nt 5\.1; .*rv:.*) gecko/.* firefox/0\.9.*$
    [browser_name_pattern] => Mozilla/5.0 (Windows; ?; Windows NT 5.1; *rv:*) Gecko/* Firefox/0.9*
    [parent] => Firefox 0.9
    [platform] => WinXP
    [browser] => Firefox
    [version] => 0.9
    [majorver] => 0
    [minorver] => 9
    [cssversion] => 2
    [frames] => 1
    [iframes] => 1
    [tables] => 1
    [cookies] => 1
    [backgroundsounds] =>
    [vbscript] =>
    [javascript] => 1
    [javaapplets] => 1
    [activexcontrols] =>
    [cdf] =>
    [aol] =>
    [beta] => 1
    [win16] =>
    [crawler] =>
    [stripper] =>
    [wap] =>
    [netclr] =>
)
于 2013-10-31T19:03:38.737 に答える