244 lines
4.9 KiB
Haskell
244 lines
4.9 KiB
Haskell
module BigFont where
|
|
|
|
import Data.Map qualified as Map
|
|
import Data.Map (Map)
|
|
import Data.Maybe
|
|
import Data.List (intersperse, transpose)
|
|
|
|
bigText :: String -> [String]
|
|
bigText = map concat . transpose . intersperse sep . mapMaybe (`Map.lookup` letters)
|
|
|
|
sep :: [String]
|
|
sep = [" " ," " ," " ," " ," "]
|
|
|
|
letters :: Map Char [String]
|
|
letters = Map.fromList
|
|
[(' ',
|
|
[" "
|
|
," "
|
|
," "
|
|
," "
|
|
," "]),
|
|
('?',
|
|
["██████ "
|
|
," ██"
|
|
," ▄███ "
|
|
," ▀▀ "
|
|
," ██ "]),
|
|
('A',
|
|
[" █████ "
|
|
,"██ ██"
|
|
,"███████"
|
|
,"██ ██"
|
|
,"██ ██"]),
|
|
('B',
|
|
["██████ "
|
|
,"██ ██"
|
|
,"██████ "
|
|
,"██ ██"
|
|
,"██████ "]),
|
|
('C',
|
|
[" ██████"
|
|
,"██ "
|
|
,"██ "
|
|
,"██ "
|
|
," ██████"]),
|
|
('D',
|
|
["██████ "
|
|
,"██ ██"
|
|
,"██ ██"
|
|
,"██ ██"
|
|
,"██████ "]),
|
|
('E',
|
|
["███████"
|
|
,"██ "
|
|
,"█████ "
|
|
,"██ "
|
|
,"███████"]),
|
|
('F',
|
|
["███████"
|
|
,"██ "
|
|
,"█████ "
|
|
,"██ "
|
|
,"██ "]),
|
|
('G',
|
|
[" ██████ "
|
|
,"██ "
|
|
,"██ ███"
|
|
,"██ ██"
|
|
," ██████ "]),
|
|
('H',
|
|
["██ ██"
|
|
,"██ ██"
|
|
,"███████"
|
|
,"██ ██"
|
|
,"██ ██"]),
|
|
('I',
|
|
["██"
|
|
,"██"
|
|
,"██"
|
|
,"██"
|
|
,"██"]),
|
|
('J',
|
|
[" ██"
|
|
," ██"
|
|
," ██"
|
|
,"██ ██"
|
|
," █████ "]),
|
|
('K',
|
|
["██ ██"
|
|
,"██ ██ "
|
|
,"█████ "
|
|
,"██ ██ "
|
|
,"██ ██"]),
|
|
('L',
|
|
["██ "
|
|
,"██ "
|
|
,"██ "
|
|
,"██ "
|
|
,"███████"]),
|
|
('M',
|
|
["███ ███"
|
|
,"████ ████"
|
|
,"██ ████ ██"
|
|
,"██ ██ ██"
|
|
,"██ ██"]),
|
|
('N',
|
|
["███ ██"
|
|
,"████ ██"
|
|
,"██ ██ ██"
|
|
,"██ ██ ██"
|
|
,"██ ████"]),
|
|
('O',
|
|
[" ██████ "
|
|
,"██ ██"
|
|
,"██ ██"
|
|
,"██ ██"
|
|
," ██████ "]),
|
|
('P',
|
|
["██████ "
|
|
,"██ ██"
|
|
,"██████ "
|
|
,"██ "
|
|
,"██ "]),
|
|
('Q',
|
|
[" ██████ "
|
|
,"██ ██"
|
|
,"██ ██"
|
|
,"██ ▄▄ ██"
|
|
," ██████ "]),
|
|
('R',
|
|
["██████ "
|
|
,"██ ██"
|
|
,"██████ "
|
|
,"██ ██"
|
|
,"██ ██"]),
|
|
('S',
|
|
["███████"
|
|
,"██ "
|
|
,"███████"
|
|
," ██"
|
|
,"███████"]),
|
|
('T',
|
|
["████████"
|
|
," ██ "
|
|
," ██ "
|
|
," ██ "
|
|
," ██ "]),
|
|
('U',
|
|
["██ ██"
|
|
,"██ ██"
|
|
,"██ ██"
|
|
,"██ ██"
|
|
," ██████ "]),
|
|
('V',
|
|
["██ ██"
|
|
,"██ ██"
|
|
,"██ ██"
|
|
," ██ ██ "
|
|
," ████ "]),
|
|
('W',
|
|
["██ ██"
|
|
,"██ ██"
|
|
,"██ █ ██"
|
|
,"██ ███ ██"
|
|
," ███ ███ "]),
|
|
('X',
|
|
["██ ██"
|
|
," ██ ██ "
|
|
," ███ "
|
|
," ██ ██ "
|
|
,"██ ██"]),
|
|
('Y',
|
|
["██ ██"
|
|
," ██ ██ "
|
|
," ████ "
|
|
," ██ "
|
|
," ██ "]),
|
|
('Z',
|
|
["███████"
|
|
," ███ "
|
|
," ███ "
|
|
," ███ "
|
|
,"███████"]),
|
|
('0',
|
|
[" ██████ "
|
|
,"██ ████"
|
|
,"██ ██ ██"
|
|
,"████ ██"
|
|
," ██████ "]),
|
|
('1',
|
|
[" ██"
|
|
,"███"
|
|
," ██"
|
|
," ██"
|
|
," ██"]),
|
|
('2',
|
|
["██████ "
|
|
," ██"
|
|
," █████ "
|
|
,"██ "
|
|
,"███████"]),
|
|
('3',
|
|
["██████ "
|
|
," ██"
|
|
," █████ "
|
|
," ██"
|
|
,"██████ "]),
|
|
('4',
|
|
["██ ██"
|
|
,"██ ██"
|
|
,"███████"
|
|
," ██"
|
|
," ██"]),
|
|
('5',
|
|
["███████"
|
|
,"██ "
|
|
,"███████"
|
|
," ██"
|
|
,"███████"]),
|
|
('6',
|
|
[" ██████ "
|
|
,"██ "
|
|
,"███████ "
|
|
,"██ ██"
|
|
," ██████ "]),
|
|
('7',
|
|
["███████"
|
|
," ██"
|
|
," ██ "
|
|
," ██ "
|
|
," ██ "]),
|
|
('8',
|
|
[" █████ "
|
|
,"██ ██"
|
|
," █████ "
|
|
,"██ ██"
|
|
," █████ "]),
|
|
('9',
|
|
[" █████ "
|
|
,"██ ██ "
|
|
," ██████ "
|
|
," ██ "
|
|
," █████ "])]
|