2

Microsoft Symbol フォント (docx ファイルの w:sym タグから取得) の文字を取得し、それらを html でレンダリングしたいと考えています。ドキュメントを HTML として保存するときに Word がどのように文字を書き出すかを見ると、次のように表示されます。

<span style='mso-char-type:symbol;mso-symbol-font-family:Symbol'>Â</span>

これは、Word と Word の html 出力の両方でスクリプト R として表示されます。

独自の html ファイルに同じことを記述すると、通常のフォントで A-hat が表示され、Chrome の要素インスペクタは mso- プロパティが不明であると警告します。

Word の html 出力には、多くの mso 固有のものがありますが、mso-char-type と mso-symbol-font の解釈方法を Chrome に知らせるものは何もありません。IE でも同じ動作が見られます。

Symbol フォントを使用するようブラウザに指示する簡単な方法はありますか? または、Symbol フォント文字を明示的に Unicode に変換する必要がありますか (静的変換テーブルを使用しますか?)

ありがとう、

Wayne
4

2 に答える 2

2

Symbol フォントは、独自にエンコードされたフォントです。つまり、文字コード標準に従って、他の文字が占めるべき位置にさまざまなグリフを配置します。これは、Symbol フォントが使用できない場合、またはページ スタイル シートがオーバーライドされている場合、またはブラウザが正しく動作する場合に、Symbol フォントを使用する Web ページがひどく失敗することを意味します。ブラウザはフォールバック フォントを使用します。

適切な方法は、UTF-8 でエンコードされたページで「ℜ」などの Unicode でエンコードされた文字を使用font-familyし、該当する要素にこの文字を含むフォントのリストを含めるように設定することです。これに関する一般的な注意事項については、HTML で特殊文字を使用するためのガイドを参照してください。

一部の障害のあるブラウザーで機能する不適切な方法は、ブラウザーが一般的に理解できる方法で font を Symbol に設定すること<font face=Symbol>Â</font>です<span style="font-family: Symbol">Â</span>。しかし、前述のように、これが「機能する」場合は、ブラウザのバグと考えてください。

そうです、Symbol フォントを使用するデータがある場合は、Unicode 文字にマップする必要があります。

「ℜ」(スクリプト R ではなく、黒文字の大文字R)のような文字が必要になることはめったにないことに注意してください。特に、複素数zの実部の標準 (ISO 80000-2 による) 表記は ℜ( z ) ではなく Re zです。

于 2013-08-29T20:39:57.937 に答える
0

わかりました、mso-symbol を削除して font-family:Symbol を書くだけでうまくいったようです。ただし、これは実際にはベストプラクティスではないと思います...シンボルをユニコードに変換するための表は、次の場所にあります: http://www.alanwood.net/demos/symbol.html

于 2013-08-29T18:05:55.940 に答える