Zalgoテキストはどのように機能しますか?



How Does Zalgo Text Work



解決:

テキストは、結合文字とも呼ばれる結合文字を使用します。のセクション2.11を参照してください Unicode標準での文字の組み合わせ (PDF)。

Unicodeでは、文字レンダリングは、各グリフが指定された高さのボックスに収まる単純な文字セルモデルを使用しません。結合マークは、基本文字の上、下、または内側にレンダリングできます。



したがって、レンダリングソフトウェアがUnicodeレンダリングモデルに準拠していると仮定すると、基本文字で構成され、上記のマークを任意の長さで組み合わせて、任意の視覚的な高さに到達する文字シーケンスを簡単に構築できます。もちろん、そのようなシーケンスには意味がなく、サルでさえそれを生成する可能性があります(たとえば、適切なドライバーを備えたキーボードが与えられた場合)。

また、上のマークと下のマークの組み合わせを組み合わせることができます。



質問のサンプルテキストは次で始まります。

  • ラテン大文字H-NS
  • ラテン小文字Tの組み合わせ-ͭ
  • ギリシャのコロニスを組み合わせる-̓
  • 上記のカンマの組み合わせ-̓
  • 上記のドットの組み合わせ-̇

Zalgoテキストは、文字を組み合わせるために機能します。これらは、前に来る文字を変更できるようにする特殊文字です。

ここに画像の説明を入力してください



また

y +̆=ŷこれは実際には

y +̆=ŷ

それらを積み重ねることができるので、次のものを生成できます。


y̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆

これは実際には:

y̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆

下に物を置く場合も同じです。


y̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆



それは実際には:

y̰̰̰̰̰̰̰̰̰̰̰̰̰̰̰̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆̆

Unicodeでは、ヨーロッパ言語の発音区別符号と国際音声記号を組み合わせる主なブロックはU + 0300–U + 036Fです。

詳細はこちら

合成発音区別符号のリストを作成するには、次のスクリプトを使用できます(リンクが絶えないため)

for(var i = 768; i<879; i++){console.log(new DOMParser().parseFromString('&#'+i+';', 'text/html').documentElement.textContent +' '+'&#'+i+';');} 

また、それらをチェックしてください



Mͣͭͣ̾Vͣͥͭ͛ͤͮͥͨͥͧ̾