Text-to-ASCII art generator в Python
Я хотел бы добавить пасхальное яйцо в один из инструментов командной строки наших разработчиков, который будет приветствовать своего пользователя, если определенная дата совпадает. В основном, я ищу:
>>> print big_text("HappynBirthday")
. _________ _...._ _________ _...._
.'| |.' '-. |.' '-. .-. .-
< | .'```'. '. .'```'. '. / /
| | __ | \ | \ / /
| | .'''-. .:--.'. | | | | | | | | / /
| |/.'''. / | | | / . | / . / /
| / | | `" __ | | | |`'-.-' .' | |`'-.-' .' ` /
| | | | .'.''| | | | '-....-'` | | '-....-'` /
| | | | / / | |_ .' '. .' '. / /
| '. | '. ._, '/'-----------' '-----------' |`-' /
'---' '---'`--' `" _______ '..'
/| .--. . ___ `'.
|| |__| .'| ' |--. .-. .-
|| .--..-,.--. .| < | | | ' / /
|| __ | || .-. | .' |_ | | | | | ' __ / /
||/'__ '. | || | | | .' || | .'''-. | | | | .:--.'. / /
|:/` '. '| || | | |'--. .-'| |/.'''. | | ' .'/ | | / /
|| | || || | '- | | | / | | | |___.' /' `" __ | | ` /
|| / '|__|| | | | | | | |/_______.'/ .'.''| | /
|/'..' / | | | '.'| | | |_______|/ / / | |_ / /
' `'-'` |_| | / | '. | '. ._, '/|`-' /
`'-' '---' '---' `--' `" '..'
Есть ли для этого пакет?
4 ответа:
Автор приложения TAAG, которое вы связали здесь. Большинство шрифтов в TAAG-это шрифты FIGlet (figlet.org FIGlet-это приложение для linux с командной строкой, но драйверы FIGlet написаны на нескольких языках. Я выпустил драйвер, который написал на JavaScript здесь:
Https://github.com/patorjk/figlet.js
Хотя это должно быть портировано на Python, чтобы работать. Я сделал поиск за помощью figlet библиотеки Python и нашел это:
Https://github.com/pwaller/pyfiglet
Я не уверен, насколько хорошо он работает, или сколько спецификаций он реализует, но он выглядит довольно полным.
Вот фрагмент кода из ActiveState примера баннера Python. http://code.activestate.com/recipes/577537-banner/
Я думаю, что этот вопрос немного не по теме для переполнения стека, но вы можете попробовать погуглить "ASCII art Python" и получить такие вещи, как: http://www.youtube.com/watch?v=NEWuZfTNoJE
или Вы можете попробовать сделать это сами, вот схема:
rows = 13 # Maximum height of character # 0 is a , 1 is b and so on... alphabeth = [[ r''' ''', r''' ''', r''' ''', r''' ''', r''' ''', r''' __ ''', r''' .:--.'. ''', r'''/ | \ | ''', r'''`" __ | | ''', r''' .'.''| | ''', r'''/ / | |_ ''', r'''\ \._,\ '/ ''', r''' `--' `" ''']] text = raw_input('Enter text:\n') c = map(lambda x: ord(x)-ord('a'),text) for i in range(rows): for j in c: print alphabeth[j][i], print ""