web-dev-qa-db-ja.com

一部のUnicode文字はどこでも機能しますが、Firefoxでは機能しません。なぜですか。

Firefoxで問題が発生しました。タイトルですでに述べたように、一部のUnicode文字は、中に数字が入った奇妙な正方形に置き換えられています。問題は、Firefoxの場合のみであり、Open Officeでも、Operaでもありません。

たとえば、 このウィキペディアページ の下部にある小さなボックスの内部を見ると、 FirefoxOpera で異なる結果が得られます。

私は何をすべきか ?

同様の問題について、他の2つのスレッドに関するアドバイスに従いました( " Firefoxで一部のUnicode文字のみが表示されるのはなぜですか? "および " Firefoxが一部の文字をレンダリングしないのはなぜですか? = ");悲しいことに、それだけでは十分ではありませんでした。私はすでにArialを自分のコンピューターとFirefox自体にインストールしており、Code2000もインストールしています。それは何も変わりません。 Firefoxの設定も良さそうです。

では、どこに問題があるのでしょうか。

助けてくれてありがとう!

Update:DejaVuとDejaVuLGCもインストールしましたが、何も変更されていません。実際、Firefoxにこのフォントのみを使用させることができます。そうすると、欠落している文字の一部(すべてではない)が表示されます。しかし、これは解決策ではありません。Operaは、これらの文字(およびその他の文字)を正しく表示するためにこれを行う必要がないためです。

たとえば、 このページ について考えてみます。 私の通常のFirefox設定 では、 this が表示されます。それらを これらの根本的な新しい設定 に変更すると、 this が表示されます。上部にある通常のテキストのフォントを見てください。明らかに、それはDejaVuです;それは理想的ではありません: Operaの方がうまくいきます

3
Oneyr

同じ問題があったので、ここで更新します。私にとって本当に簡単な解決策は、GNU Unifontをインストールすることです。これはFOSSであり、膨大な範囲のUnicode文字を使用します(必要に応じて):(「標準」バージョンでは、 OPによって上記のページにすべてのグリフを表示できます)

ウェブページ: http://unifoundry.com/unifont.html

ほとんどのLinuxディストリビューションリポジトリに存在します。

ubuntuの場合:Sudo apt-get install ttf-unifont

1
ThePhi

Operaのスクリーンショットをよく見ると、そこにも問題があることがわかります。 Firefoxで欠落している文字は、Operaでも欠落しており、16進数が含まれている長方形ではなく、さまざまな空の長方形に置き換えられています。違いに関する質問への答えは、ブラウザーが欠落しているグリフの問題を異なる方法で処理することです。

Firefoxは、レンダリングできない文字のIDに関する表示(技術的なものではありますが)を表示することにより、実際には状況をより適切に処理します。 CSSフォントモジュールレベル3CRでは、セクション5.2 フォントスタイルの一致 :「8。特定の文字をどのフォントでも表示できない場合、ユーザーエージェントは、文字が表示されていないことを何らかの方法で示し、欠落しているグリフの記号表現を表示するか(Last Resort Fontを使用するなど)、欠落している文字のグリフを使用する必要がありますデフォルトのフォントから。」

一部の文字がどちらのブラウザでも表示されない理由については、あなたが言及した質問への回答を確認してください。一般的な答えは、適切なフォントが必要なだけだということです。たとえば、コメントで@mgkrebbsによって言及されている文字U + A78Dは比較的新しいため(Unicode 5.2)、そのため、その フォントサポート はかなり制限されています。 Arial Unicode MSにはまだ追加されておらず、Code2000(現在はアバンダンウェアのようです)に追加されることはおそらくないでしょう。実際には、 DejaVuフォントファミリー をダウンロードしてインストールして表示することをお勧めします。

1

次のパッケージをインストールすることで、Linuxで発生していた認識されない文字の問題を修正することができました。

apt-get install xfonts-unifont ttf-unifont

上記のコマンドはDebianシステムを想定しています。他のディストリビューションでは、別のパッケージマネージャーや特定のパッケージ名を使用する必要がある場合があります。また、最初に `Sudoを追加する必要がある場合もあります。

0
Alex Henry