*** Forwarded file follows ***
控制碼 (二) --- 屬性格式
彩色控制碼的色彩碼已於上一篇介紹過了,現在我們就直接研究
它的格式了!控制碼都有前置碼,而每個站的前置碼都大同小異的,
在東海的前置碼是 ascii 碼 21 來代表。
它的基本的格式如下:
*[ 屬性; 前景顏色; 背景顏色 m
其中,格式中三種的控制碼的順序可以互變的,在前在後都沒有關係
但是同屬一類的數字碼雖可在一個格式中重覆使用,不過系統都會以
最後一個為準!!也就是說在控制碼的格式中,你可以使用非常多的
數字控制碼,但是前景及背景的顏色控制碼為取代方式進行的,系統
都會取一個目前最後出現的 3? 及 4? 的顏色來表示文字的顏色及螢
幕的顏色!而屬性控制碼則是屬於累加的,每個都不相關,例如你可
以增加亮度也可以再使它閃爍, 如果要取消它的屬性就要用 0 碼來
取消不過因此也取消了所有的控制碼設定而恢復了系統始的設定。
讓我們來看看下面的例子,以幫了解!!
*[1;36m 可寫出高亮度的黑底淺藍字!!
*[1;32;46m 可寫出淺藍底高亮度的草綠字!!
*[32;1;46m 或 *[46;1;32m 所得到的結果都跟一面例子都一樣的
有興趣的可以試試看!!
*[36;47;32m 將得到白底綠字的效果,因為32取代了36所以系統只
出現綠色字!!
*[1;5;36;45m 將會得到紅紫底高亮度再加閃爍的淺藍字,因為屬性
碼是屬於累加的,所以能得到雙重的效果!!
大家猜一猜下面這個例子最後的效果是如何呢﹖
*[5;4;1;47;30;7;40;0;32;44;33;1;35m
ps:(1)系統的內定值為*[37;40m,所以我們打出來的字都是黑底白字的效果。
(2)要回覆到系統內定值只要打*[0m即可!!
(3)在所有文章中,前置碼我都會用'*[1;32m *[0m'表示,希望大家都看得懂!
--
※ 發信站: 批踢踢實業坊(ptt.m8.ntu.edu.tw)
◆ From: h167.s10.ts31.h