Linux终端下的ASCII艺术

http://zh.wikipedia.org/zh-tw/%E9%9B%BB%E5%AD%90%E9%81%8A%E6%88%B2%E5%8F%B2  电子游戏史

http://chen-xiao.com/?p=26

http://www.ithome.com/html/it/66015.htm

http://os.51cto.com/art/201312/424971.htm

以上是三个列表,以下是代码源

http://ascii.gallery/

http://www.figlet.org/

http://www.nog.net/~tony/warez/cowsay-3.03.tar.gz

wget http://www.robobunny.com/projects/asciiquarium/asciiquarium.tar.gz

http://ce.sysu.edu.cn/hope2008/beautydesign/ShowArticle.asp?ArticleID=10786  等宽字体

wget ftp://ftp.figlet.org/pub/figlet/program/unix/figlet-2.2.5.tar.gz
tar zxvf figlet-2.2..tar.gz
cd figlet-2.2.
less README
make;make install

上面的是默认路径,如果要更改,阅读源码目录的Readme文件,修改Makefile文件。

[root@-shiyan figlet]# pwd
/usr/local/share/figlet [root@-shiyan figlet]# figlet ei -f small
_
___(_)
/ -_) |
\___|_| [root@-shiyan figlet]# figlet ei -f slant
_
___ (_)
/ _ \/ /
/ __/ /
\___/_/
[root@-monitor bin]# ./showfigfonts
banner : ##### ## # # # # ###### #####
# # # # ## # ## # # # #
##### # # # # # # # # ##### # #
# # ###### # # # # # # # #####
# # # # # ## # ## # # #
##### # # # # # # ###### # # big :
_ _
| | (_)
| |__ _ __ _
| '_ \| |/ _` |
| |_) | | (_| |
|_.__/|_|\__, |
__/ |
|___/ block : _| _| _|
_|_|_| _| _|_| _|_|_| _| _|
_| _| _| _| _| _| _|_|
_| _| _| _| _| _| _| _|
_|_|_| _| _|_| _|_|_| _| _| bubble :
_ _ _ _ _ _
/ \ / \ / \ / \ / \ / \
( b | u | b | b | l | e )
\_/ \_/ \_/ \_/ \_/ \_/ [root@84-monitor bin]# ./figlist
Default font: standard
Font directory: /usr/games/share/figlet
Figlet fonts in this directory:
banner
big
block
bubble
digital
ivrit
lean
mini
mnemonic
script
shadow
slant
small
smscript
smshadow
smslant
standard
term
Figlet control files in this directory:
646-ca2
修改样式

[root@-monitor games]# bin/figlet -c -f lean wo

                         _/      _/      _/    _/_/
_/ _/ _/ _/ _/
_/ _/ _/ _/ _/ _/
_/ _/ _/_/ [root@-monitor games]# bin/figlet -c -f lean wo|tr ' _/' ' ()' () () () ()()
() () () () ()
() () () () () ()
() () ()() [root@84-monitor games]# bin/figlet -c -f banner wo                                  #    #  ####
                                 #    # #    #
                                 #    # #    #
                                 # ## # #    #
                                 ##  ## #    #
                                 #    #  #### [root@84-monitor games]# bin/figlet -c -f banner wo|tr '#' '?'                                  ?    ?  ????
                                 ?    ? ?    ?
                                 ?    ? ?    ?
                                 ? ?? ? ?    ?
                                 ??  ?? ?    ?
                                 ?    ?  ???? [root@84-monitor games]# bin/figlet -c -f banner wo|tr '#' '@'                                  @    @  @@@@
                                 @    @ @    @
                                 @    @ @    @
                                 @ @@ @ @    @
                                 @@  @@ @    @
                                 @    @  @@@@

大家如果有用各种term软件上过BBS的话,对ANSI art 和ASCII art一定不会陌生,很多大学BBS也都有ANSI版。

如果再深入了解一下的话,其实这种艺术形式最早始于打印机的普及。当时很多人就用打印机上的字符和换行控制来进行艺术创作,并成为现代艺术的一种形式。这就是所谓的 Keyboard Art, 也称 Typography:

之后,随着电脑的诞生,程序员们就尝试着用电脑屏幕做同样的事情。于是ASCII Art诞生了:

然后,随着Term终端的应用,各种形式的BBS得到普及,ASCII Art得到进一步发展,不仅可用的字符便多了,还增加了控制字符,成为ANSI Art:

不过技术总是向前走的。随着CSS和web标准的普及,终于有一天,人们开始——————————————

————————终于也开始用CSS+字符的方式开始作画了

不过想想也是,从人们开始用DIV堆圆角的时候,多少已经开始出现这种艺术的原形了。之后著名的ACID2测试,也采用了类似的方法。今天,上面辛普森肖像的作者,Román Cortés,只是将其深入一步而已。

虽说这也算是CSS的一种应用,但多少有些违背CSS的初衷。至于作为一种艺术形式,到底能有多大的发展,我们拭目以待吧。

linux ascii艺术与ansi艺术的更多相关文章

  1. 编码格式简介:ASCII码、ANSI、GBK、GB2312、GB18030和Unicode、UTF-8,BOM头

    编码格式简介:ASCII码.ANSI.GBK.GB2312.GB18030和Unicode.UTF-8,BOM头 二进制: 只有0和1. 十进制.十六进制.八进制: 计算机其实挺笨的,它只认识0101 ...

  2. Linux 编程学习笔记----ANSI C 文件I/O管理

    转载请注明出处:http://blog.csdn.net/suool/article/details/38129201 问题引入 文件的种类 依据数据存储的方式不同,能够将文件分为文本文件和二进制文件 ...

  3. python中的字符串编码问题——2.理解ASCII码、ANSI码、Unicode编码、UTF-8编码

    ASCII码:全名是American Standard Code for Information Interchange,ASCII码中,一个英文字母(不分大小写)占一个字节的空间,范围0x00~0x ...

  4. C#彩色艺术化二维码样式设计(仅说思路)

    原文:C#彩色艺术化二维码样式设计(仅说思路) 仅讲思路,想要源码的请绕道.   一.样式 1.先看各种二维码的样式吧: (1)最简单的样式--黑白样式,如下图: 图1  最平常见到的二维码样式(如果 ...

  5. linux下USB串口,minicom

    [一].驱动相关说明: 如果直接使用串口线,而没有用到USB转串口设备,就不需要安装驱动. 如果使用了USB转串口,一般情况下也不需要安装驱动了,目前linux系统已经包含了该驱动,可以自动识别,亦可 ...

  6. Windows 记事本的 ANSI、Unicode、UTF-8 这三种编码模式有什么区别?

    [梁海的回答(99票)]: 简答.一些细节暂无精力查证,如果说错了还请指出. 一句话建议:涉及兼容性考量时,不要用记事本,用专业的文本编辑器保存为不带 BOM 的UTF-8. * * * 如果是为了跨 ...

  7. linux和pycharm下终端彩色打印输出

    实际上linux终端是调用ANSI控制码来实现终端彩色输出.终端的字符颜色由转义序列(Escape Sequence)控制,是文本模式下的系统显示功能,与具体语言无关. 转义序列以控制字符'ESC'开 ...

  8. ASCII UNICODE UTF "口水文"

    最近接了一个单是需要把非 UTF-8 (No BOM)编码的文件转换成 UTF-8 (No BOM),若此文件是 UTF-8 但带有 BOM ,需要转换成不带 BOM 的.于是开启了一天的阅读.首先花 ...

  9. linux 修改命令提示符&ubuntu目录颜色个性化

    1.linux 命令提示符个性化 在 ANSI 兼容终端(例如 xterm.rxvt.konsole 等)里, 可以用彩色显示文本而不仅仅是黑白. 本文示范了如何使用粗体和彩色的文字.     相信每 ...

随机推荐

  1. 50元制作PS2键盘无线监控装置

    0×00    什么是Arduino  Arduino实际上就是一种开发板,将微控制器和必需的元件集成在一块电路板上,扩展出完善的接口和针脚,就可以接上各种各样的传感器,完成你心中的设计,你也可以把它 ...

  2. javaweb-dbcp

    package cn.songxinqiang.samples.commonsdbcp.util; import java.sql.Connection;import java.sql.Databas ...

  3. Android.mk中添加宏定义

    在Boardconfig.mk 中添加一个 IS_FLAG := true 由于Boardconfig.mk和各目录的Android.mk是相互关联的 所以我们可以在Android.mk 中添加 一个 ...

  4. python实现简单随机模拟——抛呀抛硬币

    还是在上次提到的数据之魅那本书,看到模拟这章,有个python模拟脚本,但书上不全,就自己简单写了下. 流程:在不同的平衡参数p(为0.5时为均匀的)下,模拟60次实验,每次投硬币8次,统计正面朝上的 ...

  5. Qt中使用随机数

    新建Empty qmake project,命名为UseRand UseRand.pro SOURCES += \ main.cpp QT += core main.cpp #include < ...

  6. iOS开发:JavaScriptCore.framework的简单使用--JS与OC的交互篇

    iOS7之后苹果为众猿推出了JavaScriptCore.framework这个框架,这个框架为大家在与JS交互上提供了很大帮助,可以在html界面上调用OC方法并传参,也可以在OC上调用JS方法并传 ...

  7. JLOI 提示问题

    按照题目意思模拟即可. Program XJOI2265; ..] of char=('a','e','i','o','u','A','E','I','O','U'); var s:ansistrin ...

  8. I.MX6 SHT20 Linux 驱动移植

    /*********************************************************************** * I.MX6 SHT20 Linux 驱动移植 * ...

  9. TypeError: The CanvasRenderingContext2D.webkitBackingStorePixelRatio getter can only be used on instances of CanvasRenderingContext2D

    ios10: CanvasRenderingContext2D.prototype.webkitBackingStorePixelRatio 报异常

  10. 在Fragment中获取Activity中数据

    今天要做一个功能,用Fragment显示从其所在的Acitivity1中获取到的数据.这个Activity1是从另一个带有参数Activity2跳转过来的,所以要获得的是这些参数.因为之前没遇到过,所 ...