mirror of
https://github.com/lammertb/libhttp.git
synced 2025-08-13 12:42:25 +03:00
150 lines
3.9 KiB
Lua
150 lines
3.9 KiB
Lua
-- (c) bel2125, 2010
|
|
-- MIT public licence
|
|
|
|
|
|
local letterCode = {
|
|
[' '] = {0,0,0,0,0},
|
|
['!'] = {0,0,95,0,0},
|
|
['"'] = {0,3,4,3,0},
|
|
['#'] = {34,127,34,127,34},
|
|
['$'] = {36,42,127,42,18},
|
|
['%'] = {35,19,8,100,98},
|
|
['&'] = {54,73,85,34,80},
|
|
["'"] = {0,11,7,0,0},
|
|
['('] = {0,28,34,65,0},
|
|
[')'] = {0,65,34,28,0},
|
|
['*'] = {20,8,62,8,20},
|
|
['+'] = {8,8,62,8,8},
|
|
[','] = {0,88,56,0,0},
|
|
['-'] = {8,8,8,8,8},
|
|
['.'] = {0,96,96,0,0},
|
|
['/'] = {32,16,8,4,2},
|
|
['0'] = {62,81,73,69,62},
|
|
['1'] = {0,66,127,64,0},
|
|
['2'] = {66,97,81,73,70},
|
|
['3'] = {65,73,77,75,49},
|
|
['4'] = {24,20,18,127,16},
|
|
['5'] = {39,69,69,69,57},
|
|
['6'] = {60,74,73,73,48},
|
|
['7'] = {1,1,121,5,3},
|
|
['8'] = {54,73,73,73,54},
|
|
['9'] = {6,73,73,41,30},
|
|
[':'] = {0,54,54,0,0},
|
|
[';'] = {0,91,59,0,0},
|
|
['<'] = {8,20,34,65,0},
|
|
['='] = {20,20,20,20,20},
|
|
['>'] = {0,65,34,20,8},
|
|
['?'] = {2,1,81,9,6},
|
|
['@'] = {50,73,121,65,62},
|
|
['A'] = {124,18,17,18,124},
|
|
['B'] = {65,127,73,73,54},
|
|
['C'] = {62,65,65,65,34},
|
|
['D'] = {65,127,65,65,62},
|
|
['E'] = {127,73,73,73,65},
|
|
['F'] = {127,9,9,9,1},
|
|
['G'] = {62,65,65,73,57},
|
|
['H'] = {127,8,8,8,127},
|
|
['I'] = {0,65,127,65,0},
|
|
['J'] = {32,64,65,63,1},
|
|
['K'] = {127,8,20,34,65},
|
|
['L'] = {127,64,64,64,64},
|
|
['M'] = {127,2,12,2,127},
|
|
['N'] = {127,4,8,16,127},
|
|
['O'] = {62,65,65,65,62},
|
|
['P'] = {127,9,9,9,6},
|
|
['Q'] = {62,65,81,33,94},
|
|
['R'] = {127,9,25,41,70},
|
|
['S'] = {38,73,73,73,50},
|
|
['T'] = {1,1,127,1,1},
|
|
['U'] = {63,64,64,64,63},
|
|
['V'] = {7,24,96,24,7},
|
|
['W'] = {127,32,24,32,127},
|
|
['X'] = {99,20,8,20,99},
|
|
['Y'] = {3,4,120,4,3},
|
|
['Z'] = {97,81,73,69,67},
|
|
['['] = {0,127,65,65,0},
|
|
['\\'] = {2,4,8,16,32},
|
|
[']'] = {0,65,65,127,0},
|
|
['^'] = {24,4,2,4,24},
|
|
['_'] = {64,64,64,64,64},
|
|
['`'] = {0,0,7,11,0},
|
|
['a'] = {56,68,68,60,64},
|
|
['b'] = {127,72,68,68,56},
|
|
['c'] = {56,68,68,68,32},
|
|
['d'] = {56,68,68,72,127},
|
|
['e'] = {56,84,84,84,24},
|
|
['f'] = {0,8,126,9,2},
|
|
['g'] = {8,84,84,60,0},
|
|
['h'] = {127,4,4,120,0},
|
|
['i'] = {0,0,125,0,0},
|
|
['j'] = {32,64,68,61,0},
|
|
['k'] = {127,16,40,68,0},
|
|
['l'] = {0,0,127,0,0},
|
|
['m'] = {120,4,120,4,120},
|
|
['n'] = {124,8,4,4,120},
|
|
['o'] = {56,68,68,68,56},
|
|
['p'] = {124,20,20,20,8},
|
|
['q'] = {24,36,20,124,64},
|
|
['r'] = {124,8,4,4,0},
|
|
['s'] = {72,84,84,84,32},
|
|
['t'] = {4,62,68,32,0},
|
|
['u'] = {60,64,64,32,124},
|
|
['v'] = {28,32,64,32,28},
|
|
['w'] = {60,64,48,64,60},
|
|
['x'] = {68,36,124,72,68},
|
|
['y'] = {12,80,80,60,0},
|
|
['z'] = {68,100,84,76,68},
|
|
['{'] = {0,8,54,65,0},
|
|
['|'] = {0,0,119,0,0},
|
|
['}'] = {0,65,54,8,0},
|
|
['~'] = {8,4,8,16,8},
|
|
};
|
|
|
|
letterCode['('] = {0,60,66,129,0}
|
|
letterCode[')'] = {0,129,66,60,0}
|
|
letterCode[','] = {0,176,112,0,0}
|
|
letterCode[';'] = {0,182,118,0,0}
|
|
letterCode['['] = {0,255,129,129,0}
|
|
letterCode[']'] = {0,129,129,255,0}
|
|
letterCode['_'] = {128,128,128,128,128}
|
|
letterCode['g'] = {24,164,164,124,0}
|
|
letterCode['j'] = {64,128,132,125,0}
|
|
letterCode['p'] = {252,36,36,36,24}
|
|
letterCode['q'] = {24,36,36,252,128}
|
|
letterCode['y'] = {12,80,80,60,0}
|
|
letterCode['{'] = {0,24,102,129,0}
|
|
letterCode['}'] = {0,129,102,24,0}
|
|
|
|
|
|
local function HugeLetter(letter)
|
|
if letter==' ' then return {" ", " ", " ", " ", " ", " ", " ", " "} end
|
|
local code = letterCode[letter]
|
|
local str = {"", "", "", "", "", "", "", ""}
|
|
for i=1,5 do
|
|
local n = code[i]
|
|
if n and n>0 then
|
|
for b=1,8 do
|
|
if bit32.btest(n, bit32.lshift(1, b-1)) then str[b] = str[b] .. letter else str[b] = str[b] .. ' ' end
|
|
end
|
|
end
|
|
end
|
|
return str
|
|
end
|
|
|
|
function HugeText(str)
|
|
local txt = {"", "", "", "", "", "", "", ""}
|
|
for i=1,string.len(str) do
|
|
local s = HugeLetter(str:sub(i,i))
|
|
for b=1,8 do
|
|
if i>1 then
|
|
txt[b] = txt[b] .. " " .. s[b]
|
|
else
|
|
txt[b] = txt[b] .. s[b]
|
|
end
|
|
end
|
|
end
|
|
return txt
|
|
end
|
|
|
|
return HugeText
|