asciimatics-创建全屏文本UI(从交互式表单到ASCII动画)的python软件包
Asciimatics是一个python软件包,可帮助人们在任何平台上创建全屏文本UI(从交互式表单到ASCII动画)。它根据Apache Software Foundation许可2.0获得许可。
它给80年代进行编程的任何人都带来了一点乐趣...它提供了一个跨平台的Python类来完成您可能要求的所有低级控制台功能,包括:
颜色/样式文字-包括256个彩色终端和unicode字符(甚至CJK语言)
光标定位
键盘输入(无阻塞或回声),包括Unicode支持
鼠标输入(终端允许)
控制台调整大小时进行检测和处理
屏幕消去
此外,它提供了一些简单的高级API来提供更复杂的功能,包括:
抗锯齿的ASCII线条画
图像到ASCII的转换-包括JPEG和GIF格式
许多动画效果-例如精灵,粒子系统,横幅等。
文本UI的各种小部件-例如按钮,文本框,单选按钮等。
目前,该软件包已被证明可以在CentOS 6和7,Raspbian(即Debian wheezy),Ubuntu 14.04,Windows 7、8和10,OSX 10.11和Android Marshmallow(由termux.com提供)上运行。还应该为任何提供有效curses实现的平台工作。
它应该与实现无关,并且已经在CPython和PyPy2上成功进行了测试。
安装
Asciimatics支持Python版本2和3。有关经过测试的版本的确切列表,请参阅pypi。
要安装asciimatics,只需使用pip进行安装,如下所示:
$ pip install asciimatics
这应该为您安装所有依赖项。如果您不使用pip或无法安装pip,则可以先在网盘上面下载Asciimatics的源代码,然后使用requirements.txt中列出的软件包直接安装依赖项。此外,Windows用户(不使用pip)将需要安装pywin32。
如何使用
要使用低级API,只需创建一个Screen,然后将其用于在任何位置打印彩色文本,或获取鼠标/键盘输入。例如,这是经典“ hello world”的一种变体:
相同的代码可在Windows,OSX和Linux上运行,并为所有更高级别的功能铺平了道路。这些仍然需要屏幕,但是现在您还可以使用某些效果创建一个场景,然后让屏幕播放它。例如,此代码:
应该输出这样的内容: