Как работает текст uʍop-ǝpᴉsdn? - PullRequest
61 голосов
/ 08 июня 2010

Вот сайт, который я нашел, который будет производить перевернутые версии любого английского текста.

как это работает? Unicode имеет вверх ногами символы? Или что?

Как я могу написать свою собственную функцию перелистывания текста?

Ответы [ 6 ]

52 голосов
/ 09 июня 2010

как это работает? Unicode имеет с ног на голову?

Unicode имеет перевернутые символы. У них есть "ПОВОРОТ" на свое имя:

ƍ U+018D LATIN SMALL LETTER TURNED DELTA
Ɯ U+019C LATIN CAPITAL LETTER TURNED M
ǝ U+01DD LATIN SMALL LETTER TURNED E
Ʌ U+0245 LATIN CAPITAL LETTER TURNED V
ɐ U+0250 LATIN SMALL LETTER TURNED A
ɒ U+0252 LATIN SMALL LETTER TURNED ALPHA
ɥ U+0265 LATIN SMALL LETTER TURNED H
ɯ U+026F LATIN SMALL LETTER TURNED M
ɰ U+0270 LATIN SMALL LETTER TURNED M WITH LONG LEG
ɹ U+0279 LATIN SMALL LETTER TURNED R
ɺ U+027A LATIN SMALL LETTER TURNED R WITH LONG LEG
ɻ U+027B LATIN SMALL LETTER TURNED R WITH HOOK
ʇ U+0287 LATIN SMALL LETTER TURNED T
ʌ U+028C LATIN SMALL LETTER TURNED V
ʍ U+028D LATIN SMALL LETTER TURNED W
ʎ U+028E LATIN SMALL LETTER TURNED Y
ʞ U+029E LATIN SMALL LETTER TURNED K
ʮ U+02AE LATIN SMALL LETTER TURNED H WITH FISHHOOK
ʯ U+02AF LATIN SMALL LETTER TURNED H WITH FISHHOOK AND TAIL
ʴ U+02B4 MODIFIER LETTER SMALL TURNED R
ʵ U+02B5 MODIFIER LETTER SMALL TURNED R WITH HOOK
ʻ U+02BB MODIFIER LETTER TURNED COMMA
̒ U+0312 COMBINING TURNED COMMA ABOVE
ჹ U+10F9 GEORGIAN LETTER TURNED GAN
ᴂ U+1D02 LATIN SMALL LETTER TURNED AE
ᴈ U+1D08 LATIN SMALL LETTER TURNED OPEN E
ᴉ U+1D09 LATIN SMALL LETTER TURNED I
ᴔ U+1D14 LATIN SMALL LETTER TURNED OE
ᴚ U+1D1A LATIN LETTER SMALL CAPITAL TURNED R
ᴟ U+1D1F LATIN SMALL LETTER SIDEWAYS TURNED M
ᵄ U+1D44 MODIFIER LETTER SMALL TURNED A
ᵆ U+1D46 MODIFIER LETTER SMALL TURNED AE
ᵌ U+1D4C MODIFIER LETTER SMALL TURNED OPEN E
ᵎ U+1D4E MODIFIER LETTER SMALL TURNED I
ᵚ U+1D5A MODIFIER LETTER SMALL TURNED M
ᵷ U+1D77 LATIN SMALL LETTER TURNED G
ᶛ U+1D9B MODIFIER LETTER SMALL TURNED ALPHA
ᶣ U+1DA3 MODIFIER LETTER SMALL TURNED H
ᶭ U+1DAD MODIFIER LETTER SMALL TURNED M WITH LONG LEG
ᶺ U+1DBA MODIFIER LETTER SMALL TURNED V
℩ U+2129 TURNED GREEK SMALL LETTER IOTA
Ⅎ U+2132 TURNED CAPITAL F
⅁ U+2141 TURNED SANS-SERIF CAPITAL G
⅂ U+2142 TURNED SANS-SERIF CAPITAL L
⅄ U+2144 TURNED SANS-SERIF CAPITAL Y
⅋ U+214B TURNED AMPERSAND
ⅎ U+214E TURNED SMALL F
⌙ U+2319 TURNED NOT SIGN
❛ U+275B HEAVY SINGLE TURNED COMMA QUOTATION MARK ORNAMENT
❝ U+275D HEAVY DOUBLE TURNED COMMA QUOTATION MARK ORNAMENT
⦢ U+29A2 TURNED ANGLE
Ɐ U+2C6F LATIN CAPITAL LETTER TURNED A
ⱹ U+2C79 LATIN SMALL LETTER TURNED R WITH TAIL
ⱻ U+2C7B LATIN LETTER SMALL CAPITAL TURNED E
Ꝿ U+A77E LATIN CAPITAL LETTER TURNED INSULAR G
ꝿ U+A77F LATIN SMALL LETTER TURNED INSULAR G
Ꞁ U+A780 LATIN CAPITAL LETTER TURNED L
ꞁ U+A781 LATIN SMALL LETTER TURNED L

Однако это далеко не полный комплект. Большинство перевернутых текстов работает, выбирая символы, которые имеют достаточно близкое сходство с перевернутыми буквами. Это эквивалентно вводу 0,7734 на калькуляторе для написания «ПРИВЕТ».

30 голосов
/ 08 июня 2010

Когда 'uʍop-ǝpısdn' копируется и отображается в программе шестнадцатеричного дампа, строка выглядит так:

75 CA 8D 6F 70 2D C7 9D 70 C4 B1 73 64 6E

UTF-8 разбивка это:

0x75      = U+0075 = LATIN SMALL LETTER U
0xCA 0x8D = U+028D = LATIN SMALL LETTER TURNED W
0x6F      = U+006F = LATIN SMALL LETTER O
0x70      = U+0070 = LATIN SMALL LETTER P
0x2D      = U+002D = HYPHEN MINUS
0xC7 0x9D = U+01DD = LATIN SMALL LETTER TURNED E
0x70      = U+0070 = LATIN SMALL LETTER P
0xC4 0xB1 = U+0131 = LATIN SMALL LETTER DOTLESS I
0x73      = U+0073 = LATIN SMALL LETTER S
0x64      = U+0064 = LATIN SMALL LETTER D
0x6E      = U+006E = LATIN SMALL LETTER N
26 голосов
/ 08 июня 2010

есть ли у Юникода символы вверх дном?

Да!Или, по крайней мере, персонажи, которые выглядят так, как будто они перевернуты.Кроме того, обычные символы английского алфавита могут показаться вверх ногами.Например, u может быть перевернутым n .

Чтобы его кодировать, вам просто нужно взять массив символов, отобразить их в обратном порядке и заменитьте персонажи с перевернутой версией их.Это даст вам хорошее начало: zʎxʍʌnʇsɹbdouɯ ןʞ ſıɥbɟǝpɔqɐ

7 голосов
/ 08 июня 2010

Это просто символы Юникода.

enter image description here

6 голосов
/ 08 июня 2010

Посмотрите на источник веб-страницы:

function flip() {
    var result = flipString(document.f.original.value);
    document.f.flipped.value = result;
}

function flipString(aString) {
    aString = aString.toLowerCase();
    var last = aString.length - 1;
    var result = "";
    for (var i = last; i >= 0; --i) {
        result += flipChar(aString.charAt(i))
    }
    return result;
}

function flipChar(c) {
    if (c == 'a') {
        return '\u0250'
    }
    else if (c == 'b') {
        return 'q'
    }
    else if (c == 'c') {
        return '\u0254' //Open o -- copied from pne
0 голосов
/ 03 августа 2018

Z⅄XꤵꓥꓵꓕSꓤÒꓒONꟽ⅂ꓘ ᒋ IΗ⅁ℲƎꓷↃꓭꓯzʎxʍʌnʇsɹbdouɯ ןʞ ṣᴉɥɓɟǝpɔqɐ068 ᠘96 ҺƐᘔl¡¿; ˙ ««⅋

В этом наборе есть несколько лучших или более согласованных заглавных букв (особенно ABDJMQRUVW) и чисел (особенно 2457), чем я видел там, и обратите внимание, что строчные буквы i и j пунктирные, а g - правый путь. «I» - это один символ, но «j» - это составной элемент, в котором используется диакритическая метка «точка-под» из unicode.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...