719

以下のような Zalgo と呼ばれる奇妙にフォーマットされたテキストがさまざまなフォーラムで書かれているのを見てきました。見るのは少し面倒ですが、キャラクターがどうあるべきかという私の考えを損なうので、本当に気になります. 私の理解では、キャラクターは線を横切って水平に移動し、特定の「コンテナー」内にとどまるはずです。明らかに、Zalgo のテキストは垂直方向に移動しており、スペースに制限されているようには見えません。

これは Unicode のバグ/欠陥/エクスプロイト/ハックですか? これらの個々のキャラクターは奇妙な特性を持っていますか? "ここで何が起きてるの?


h̡̡̫̤̤̣͉̤̫̤̤̣͉̤ͭ̓̓ͭ̓̓w͓̲͙͖̥͉̹͋ͬ̊ͦ̂̀̚ ͎͉͖̌ͯͅͅ ͎͉͖̌ͯͅͅ ͎͉͖̌ͯͅͅe


4

2 に答える 2

450

テキストでは、結合記号とも呼ばれる結合文字が使用されています。Combining Characters in the Unicode Standard (PDF)のセクション 2.11 を参照してください。

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

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

また、「上結合」と「下結合」のマークを混在させることもできます。

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

于 2013-12-01T08:34:31.997 に答える
282

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

ここに画像の説明を入力

また

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

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ͣͥͭ͛ͤͮͥͨͥͧ̾

于 2015-04-29T14:52:08.943 に答える