web-dev-qa-db-ja.com

「zalgo」を正しく表示するために必要な文字セット

Stack Overflowに関する次の回答は、正規表現を使用してHTMLを解析することに反対する説得力のある議論で有名です。 https://stackoverflow.com/a/1732454/505154

投稿の内容はますます破損し、最後は次のようになります。

zalgo properly rendered

しかし、私のWindows XPラップトップでは、次のように表示されます。

zalgo replaced by boxes

これらの「文字」を正しく表示するにはどうすればよいですか?

3
Andrew Clark

最も簡単な方法は、 Symbola などの十分に大きなフォントをダウンロードしてインストールし、FirefoxまたはChromeを使用することです。

問題は2つあります。まず、テキストには、WinXPに付属のフォントでサポートされていない発音区別符号の組み合わせが含まれています。これを修正するために使用できるフリーフォントがいくつかあります。次に、IEは、該当するfont-familyリストにリストされているフォントがHTMLドキュメントの文字をカバーしていない場合、文字のレンダリングが不十分です。ChromeおよびFirefoxはるかに優れた仕事をします。仮想WindowsでテストしたFirefox3でもXPシステムは状況をうまく処理しているようです:システム内の他のフォントから欠落している文字を取得します。

幼稚な方法で発音区別符号を組み合わせて遊ぶページに加えて、そのようなマークを利用する実際のページがあります。ですから、準備しておくのは良いことです。すべての文字をカバーする単一のフォントはないため、必要に応じて追加のフォントをインストールするだけです。 Alan Woodには、大きな文字レパートリーを備えた フォントのダウンロード の素敵なページがあります。

6

それは単なる文字セット以上のものです。

これを適切に表示するには、テキストとそのために使用するライブラリをレンダリングするクライアントは、ユニコードマークの組み合わせをサポートする必要があります。また、必要なフォントと、必要に応じてフォントを組み合わせるためのフォントステッチのサポートも必要です。

I thinkメインフォントはMicrosoft SansSerifまたはArialUnicode MS Regularで、これらはWindowsの各バージョンに標準で付属しており、XPの最初のリリース以降、おそらくすべてを含むように大幅に更新されています。ここに欠落しているユニコードの発音区別符号。ここでは、特定の発音区別符号が欠落している場合にプライマリフォントのギャップを埋めるために使用される他のフォントが使用されている可能性があります。更新されたフォントのコピーを、料金を支払わずに(ラップトップ用にWindows Vista、Windows 7、またはWindows 8を購入せずに)ダウンロードした場合の法的影響についてはよくわかりません。

問題が発音区別符号を組み合わせるためのレンダリングライブラリのサポートの欠如である場合、テキストを正しく表示するのに役立つフォントの量はありません。唯一のオプションは、テキストのレンダリングに使用するアプリケーションやライブラリを更新することです。

3
Darth Android