go實現終端輸出顏色文本
// 示例
fmt.Printf("\033[1;31;40m%s\033[0m\n","高亮顯示 - 紅色文字,黑色底噠")
fmt.Printf("\033[4;31;40m%s\033[0m\n","下划線 - 紅色文字,黑色底噠")
fmt.Printf("\033[5;31;40m%s\033[0m\n","閃爍 - 紅色文字,黑色底噠")
fmt.Printf("\033[7;31;40m%s\033[0m\n","反白顯示 - 紅色文字,黑色底噠")
fmt.Printf("\033[8;31;40m%s\033[0m\n","紅色文字,黑色底噠")

\033 |
[1;31;40m |
紅色文字,黑色底噠 |
\033 |
[0m |
|
|
|
|
|
|
|
\033 操作類型 |
|
|
|
|
|
\ |
033 |
|
|
|
|
表示轉義 |
設置顏色 |
|
|
|
|
|
|
|
|
|
|
[1;31;40m 設置顏色 |
|
|
|
|
|
[ |
1 |
; |
31 |
40 |
m |
設置開始 |
顯示方式 1表示高亮,下面說明 |
分號分隔 |
前景色(文字顏色) |
背景色 |
設置結束 |
|
|
|
|
|
|
\033 操作類型 |
|
|
|
|
|
\ |
033 |
|
|
|
|
|
|
|
|
|
|
表示轉義 |
設置顏色 |
|
|
|
|
[0m 恢復默認的中斷樣式 |
|
|
|
|
|
顯示方式
代碼 |
意義 |
0 |
終端默認顯示 |
1 |
高亮顯示(文字會略粗一點顯示。) |
4 |
使用下划線 |
5 |
閃爍 |
7 |
反白 |
8 |
不可見 |
顏色示例
前景色(文字顏色) |
背景色 |
高亮色(加粗) |
顏色 |
30 |
40(左邊的30+10) |
90(30+60) |
黑色 |
31 |
同上 |
同上 |
紅色 |
32 |
同上 |
同上 |
綠色 |
33 |
同上 |
同上 |
黃色 |
34 |
同上 |
同上 |
深藍色 |
35 |
同上 |
同上 |
紫色 |
36 |
同上 |
同上 |
Tiffany藍 |
37 |
同上 |
同上 |
白色 |
type Color int
// Foreground text colors.
const (
FgBlack Color = iota + 30
FgRed
FgGreen
FgYellow
FgBlue
FgMagenta
FgCyan
FgWhite
)
// Foreground Hi-Intensity text colors.
const (
FgHiBlack Color = iota + 90
FgHiRed
FgHiGreen
FgHiYellow
FgHiBlue
FgHiMagenta
FgHiCyan
FgHiWhite
)
// Colorize a string based on given color.
func ColorSize(s string, c Color) string {
return fmt.Sprintf("\033[1,%s,40m%s\033[0m", strconv.Itoa((int c)), s)
}