英語と日本語のテキストが混在し、lang = "jp"とxml:lang = "jp"のXHTML1.1ドキュメントがあります。 html要素の開始タグに挿入します。実際のコンテンツは、UTF-8でエンコードされ、これは同様に、コンテンツタイプに記載されています中国語のフォントではなく、CJKテキスト用の日本語フォントをブラウザに読み込む方法
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="jp" lang="jp">
<head>
<title>Test page</title>
<meta http-equiv="Content-Type"
content="application/xhtml+xml; charset=utf-8"/>
</head>
<body><div>今</div><div>込</div></body></html>
XML/HTMLの仕様は「LANG」属性が継承されると言うので、内容は終わるはずです日本語をサポートしているフォントでレンダリングされていますが、日本語ではなく中国語のフォントを使用しています(日本語の漢字は実際には2つの言語の微妙な違いがありますが、文字)。
たとえば、上記のコードでは、最初の文字の上部に - が付いている必要があります。代わりに中国語フォントが使用されている場合、この文字は常に下にaのように表示されます。また、2番目の文字は7 \のような形にする必要がありますが、中国語のフォントを使用するとラムダλのように見えることがよくあります。これらはどちらも日本語の正しい印刷物/画面書式ではありません。
質問:ブラウザに、CJKテキストのための日本語フォントを選択させる方法がありますが、少なくとも1つがユーザーのものと一致することを期待して、100個のフォント名を含むCSSルールを作成せずにインストールされている?
(最小のCJKフォントは> 4MBの行にあり、完全なフォントは15〜20MBほどですので、正しいフォントがロードされるように@ font-face宣言に依存していることは明らかです)。最近のブラウザのすべての現在のバージョン:コメント
裕二へ
の答え。答えがプラットフォームとブラウザに依存する場合、それは本当に簡単です。
deceze:悲しいことに、悲しいことに、どのフォントを使用するかを明示的に示すCSSルールがないと、ブラウザは使用したフォントを言いませんから選びます。 getComputedStyle(document.getElementById("elementid")).getPropertyValue("font-family")
を使用して計算されたスタイルを調べると、Chromeは "Times New Roman"を使用していると報告します。これは、そのフォントにCJKグリフがないためではありません。 Firefoxはこの質問があり、それはフォントが、一般的なカテゴリラベルされていないフォント「セリフ」、...
2015編集上の
四年を使用していることを報告し、でもあまり有用です依然として意見を得るので、2つの注意点があります。
- XHTML1.1はすでに2011年に脱出していましたが、現在は死んでいる技術です。 XMLは中間フォーマットであり、コンテンツをWeb上に置く必要がある場合、それを行うための唯一の正しい方法は、コンテンツを実際のHTMLにXSLTすることです(もちろん、XMLを使用する場合、XMLはHTML、PDFなどに変換するXSLTシートが既にあります)
- Webfontホスティングサービスsupport subsetting、ウェブサイトでは、アウトラインや文字の構成ルールのみを含むフォントを使用できますページ上で使用されます。
テキストの表示に使用するフォントは何ですか? FirebugまたはWebkit Inspectorを試して、要素に移動し、そのプロパティを調べて調べます。 – deceze
あなたのターゲットはどのブラウザですか?これらは残念ながらブラウザやプラットフォームに依存しているので、あなたの質問にそのことを明記したいと思います。 – Yuji