?
zh en
20px - +
wrap
cursor
>
<
..
发信人: comeonfulin (小猪呼噜噜), 信区: ASCIIArt 标 题: ASCIIArt短期培训班第三讲 发信站: 南京大学小百合站 (Thu Sep 8 20:16:24 2005) ASCIIArt短期培训班第四讲 显示属性的设置 显示属性是BBS中比较常用的ANSI控制符,通常可以用来设置前景色(即文本颜 色)、背景色、高亮状态、文本下划线、闪烁文本和反显等。 下面首先介绍一下BBS中的常用颜色,一共可以设置16种不同的颜色,包括8种 低亮颜色和8种高亮颜色,如下所示(这与ANSIEditor的颜色工具栏相同): ← 低亮色 ← 高亮色 为了避免其他方面造成的影响,请大家先把term软件的默认高亮设置关掉: Cterm: 工具->系统参数设置->显示,选择正常显示(以低亮颜色为主) Sterm: 选项->默认设置->外观,不要选则总是高亮 Fterm: 选项->参数设置,不要选则默认高亮 设置显示属性的代码为 *[p1;p2;...;pnm 其中*是ASCII控制符,在telnet编辑状态下连续按两次ESC键得到,注意不是 按shift+8得到的那个星号;p1...pn是整数,含义如下;m必须小写。 0-关闭各显示属性: *[m*[0m类似,都能关闭闪烁、下划线和反显等属性的 显示,并恢复到默认前背景色。 1-高亮: *[1m可以得到相应的高亮颜色,*[1m*[31m*[1;31m效果是一样的, 一般采用后者而使得代码更短。 4-下划线: *[4m可以给文本添加下划线,在Cterm里下划线一律是白色的,而 在Sterm或Fterm里面下划线的颜色与相应位置文字的颜色相同。 5-闪烁: *[5m可以给文本设置闪烁效果,一般来说一屏上闪烁的文本不要太 多太集中,这样会分散注意力。 7-反显: *[7m设置反显效果,建议不要使用,因为各种term软件对其解释差别 较大,Cterm中是交换前背景,高亮一律只作用在前景;Sterm中交换前背景,而且 会把高亮作用到背景色上,因此sterm中可能出现高亮背景低亮前景的情况;Fterm 中忽略前背景色,用白底黑字。 30~37-设置前景色: 40~47-设置背景色: *[30m黑色 *[34m蓝色 *[40m暗黑 *[44m暗蓝 *[31m红色 *[35m紫色 *[41m暗红 *[45m暗紫 *[32m绿色 *[36m青色 *[42m暗绿 *[46m暗青 *[33m黄色 *[37m白色 *[43m暗黄 *[47m暗白 精简代码 一般来说BBS中一行代码的长度不超过254个英文字符,对于活动看板等有更严 格的限制,允许的代码长度更短,因此有时候一定要使用尽量短的代码,重复的代 码不要多次设置,例如: 高亮粉底白字高亮蓝底黄字闪烁红底黄字 正常情况下代码可以写成: *[1;37;45m高亮粉底白字*[1;33;44m高亮蓝底黄字*[0;5;33;41m闪烁红底黄字 上面的代码可以精简为: *[1;37;45m高亮粉底白字*[33;44m高亮蓝底黄字*[0;5;41m闪烁红底黄字 ↑高亮状态不变 ↑前景色不变 需要注意的是,如果上述代码不使用*[m或*[0m关闭各显示属性,那么上一行 末尾的显示属性会延续到下一行,除非到达屏幕底端。 其他控制符介绍(选学) 以下一些ANSI控制符在制作超过6行的qmd、彩色id、彩色昵称以及右方垂直的 qmd时会用到,先列出来,有能力的学员可选学,在后边讲制作qmd时还会提到: *[nA 光标上移n行 *[2J 清屏,并且光标移到屏幕左上角 *[nB 光标下移n行 *[K 清除从光标到行尾的内容 *[nC 光标右移n列 *[s 保存光标位置 *[nD 光标左移n列 *[u 恢复光标位置 *[y;xH 将光标移至第x列、第y行 telnet下编辑文章的特殊命令(选学) ESC-C 观看彩色编辑成果 ESC-M 区块操作 ESC-G 跳转到指定行 ESC-F 设定前景色彩 ESC-D 删除区块 Ctrl+S 跳转至第一行 ESC-B 设定背景色彩 ESC-Q 清除标定 Ctrl+T 跳转至最后一行 ESC-R 还原色彩 Ctrl+U 标定区块 ESC-L 开或关讯息栏 Ctrl+C 复制区块 ESC-I 汇入档案 Ctrl+K 删至行末 ESC-E 汇出档案 Ctrl+Y 删除整行 Insert 切换插入/置换模式 其中黄色表示的命令比较常用,建议能够掌握。 作业 1. 熟记下面控制代码的意义: *[0m、*[1m、*[4m、*[5m、*[7m、*[30m~*[37m、*[40m~*[47m 2. 写出上述每种控制代码的意义并附上效果,具体内容由学员自己安排,但 要包括上述所有的控制代码。请在telnet下term软件中直接写,不要在web下写, 也不要使用ANSIEditor编辑。编写时请注意代码的精简。写好后通过信件发给各自 指定的老师。 (附我在第一期培训班的作业,供大家参考:) *[1;34;47m 高亮白底深蓝字 给大家看一首俺高中写的打油诗 *[4;5;30;41m 下划线闪烁红底黑字 瞌睡醒来无题一首 *[0;33;45m 粉底黄字 by comeonfulin *[1;32;41m 高亮红底绿字 春天不是读书天, *[1;31;46m 高亮天蓝底红字 夏日炎炎正好眠。 *[1;33;44m 高亮深蓝底黄字 秋有蚊虫冬怕冷, *[1;37;45m 高亮粉底白字 收拾书包待明年。 最后搞一个反显的,ANSIEditor不是说轻易不要用反显么。 *[1;4;7m 高亮反显那就把ANSIEditor反显一下吧,哈哈 第五讲内容预告:ANSIEditor与各种term之间的复制粘贴