テキストがボックスとして表示されるとはどういう意味ですか?
質問
(たとえば)Windows GDIを使用してプログラムにテキストを表示しようとしていますが、一部のUnicode文字はボックスとして表示されますか?どうした?
解決
通常、これは、指定されたUnicode文字がその特定のフォントで使用できないことを意味します。フォントを多国籍のフォントに変更してみてください。それは消えるはずです。
他のヒント
( http://www.cafepress.com/nucleartacos.163046834からのTシャツの画像a>)
上の画像は、Unicode文字の全範囲を考慮に入れていないテキスト表示システムの一般的な障害モードを表しています。 Windowsプラットフォームでは、使用可能なフォントを使用して表現できない文字は、開いた長方形で表されます。
Windowsには、Unicode文字を表示しようとしたときに発生する一般的な表示の問題が2つあります。
-
テキストが疑問符として表示されることがある
- これは、通常システムコードページを介してUnicodeデータが8ビット文字セットエンコーディング(または技術的にはマルチバイト文字)に変換されるときに発生します(ただし、変換呼び出しで他のコードページを指定できます)。ターゲットの8ビット文字セットに必要な文字が含まれていない場合、ターゲット文字セットで表現できない文字は疑問符に変換されます。
-
テキストがボックスとして表示されることがある
- これは、特定の文字のglpyhがないフォントの問題です。ドキュメント内のUnicode文字とフォントでサポートされている文字との間に不一致がある場合、ボックスが表示されます。具体的には、ボックスは選択したフォントでサポートされていない文字を表します。
問題は、表示しようとしているテキストに、使用しているフォントでサポートされていない文字が含まれていることです。ボックス文字は、フォントにグリフを持たないUnicodeテキストのデフォルトの置換文字です。
Windowsで、さまざまな言語のテキストを表示する場合は、Arial Unicode MSなどのフォントを使用します。これには、さまざまな言語のグリフが含まれます。これは「最小公分母」です。フォント-グリフは通常そこにありますが、通常は文字がなく、一部のグリフは隣同士で少し奇妙に見えます。
所属していません StackOverflow