代码之家  ›  专栏  ›  技术社区  ›  Anirudh Goel

如何生成这样的翻转文本-oás

  •  1
  • Anirudh Goel  · 技术社区  · 17 年前

    我想做一个脚本,它可以像我打字一样翻转文本 stackoverflow它应该到达-oás。

    很多网站都是这样做的 link text 这个呢 link text

    1 回复  |  直到 7 年前
        1
  •  4
  •   Sorantis    17 年前

    JavaScript代码。将此代码转换为Java或C将很容易#

    function flip() {
     var result = flipString(document.f.original.value.toLowerCase());
     document.f.flipped.value = result;
    }
    
    function flipString(aString) {
     var last = aString.length - 1;
    
     var result = new Array(aString.length)
     for (var i = last; i >= 0; --i) {
      var c = aString.charAt(i)
      var r = flipTable[c]
      result[last - i] = r != undefined ? r : c
     }
     return result.join('')
    }
    
    var flipTable = {
    a : '\u0250',
    b : 'q',
    c : '\u0254', //open o -- from pne
    d : 'p',
    e : '\u01DD',
    f : '\u025F', //from pne
    g : '\u0183',
    h : '\u0265',
    i : '\u0131', //from pne
    j : '\u027E',
    k : '\u029E',
    //l : '\u0283',
    m : '\u026F',
    n : 'u',
    r : '\u0279',
    t : '\u0287',
    v : '\u028C',
    w : '\u028D',
    y : '\u028E',
    '.' : '\u02D9',
    '[' : ']',
    '(' : ')',
    '{' : '}',
    '?' : '\u00BF', //from pne
    '!' : '\u00A1',
    "\'" : ',',
    '<' : '>',
    '_' : '\u203E',
    ';' : '\u061B',
    '\u203F' : '\u2040',
    '\u2045' : '\u2046',
    '\u2234' : '\u2235'
    }
    
    for (i in flipTable) {
      flipTable[flipTable[i]] = i
    }