Go语言如何实现彩色输出示例详解

简介 在逛github时发现一个好玩的Go项目,彩色输出文本说明 支持Linux彩色输出支持Windows彩色输出Golang IDE输出是不支持的使用 效果图

简介

在逛github时发现一个好玩的Go项目,彩色输出文本

说明

支持Linux彩色输出

支持Windows彩色输出

Golang IDE输出是不支持的

使用

效果图

CODE DEMO

package main
import (
   "fmt"
   "github.com/fatih/color"
)
func main() {
   color.Cyan("蓝绿色.")
   color.Blue("蓝色.")
   color.Red("红色.")
   color.Magenta("品平.")
   color.White("白色.")
   color.Black("黑色.")
   color.Yellow("----------------_----------------")
   color.Yellow("WARNING - WARNING!")
   color.Yellow("WARNING - WARNING.")
   color.Yellow("----------------_----------------")
   //Bold 高亮粗体
   bold := color.New(color.Bold).Add(color.FgGreen)
   bold.Printf("color: %s\n",color.CyanString("heihei"))
   fmt.Printf("color: %s\n",color.GreenString("haha"))
   //BgGreen背影绿色
   //Underline带下划线
   c := color.New(color.BgGreen).Add(color.Underline)
   c.Printf("背景绿色且带下划线的")
   fmt.Println("")
   //自定义提示
   success := color.New(color.Bold, color.FgGreen).PrintlnFunc()
   warning := color.New(color.Bold, color.FgYellow).PrintlnFunc()
   error := color.New(color.Bold, color.FgRed).PrintlnFunc()
   info := color.New(color.Bold, color.FgWhite).PrintlnFunc()
   success("成功")
   warning("警告")
   error("错误")
   info("信息")
   //除了高亮和下划线还有其它几种功能,比如
   Faint := color.New(color.Faint, color.FgHiWhite).PrintlnFunc()
   Italic := color.New(color.Italic, color.FgHiWhite).PrintlnFunc()
   BlinkSlow := color.New(color.BlinkSlow, color.FgHiWhite).PrintlnFunc()
   BlinkRapid := color.New(color.BlinkRapid, color.FgHiWhite).PrintlnFunc()
   ReverseVideo := color.New(color.ReverseVideo, color.FgHiWhite).PrintlnFunc()
   Concealed := color.New(color.Concealed, color.FgHiWhite).PrintlnFunc()
   CrossedOut := color.New(color.CrossedOut, color.FgHiWhite).PrintlnFunc()
   Faint("模糊")
   Italic("斜体")
   BlinkSlow("闪光")
   BlinkRapid("快闪")
   ReverseVideo("反转")
   Concealed("隐藏")
   CrossedOut("删除线")
}

小结

  • 该包共提供了:黑、白、红、绿、蓝、紫、黄、蓝绿共8种颜色,且不支持颜色混合,以最后一参数为准
  • 该包共提供了: 高亮粗体、模糊、斜体、闪光、反转、隐藏、删除线等功能,快闪好像没有测出来
  • 该包封装了fmt.Fprintln方法,可以直接使用c.Println等
func (c *Color) Println(a ...interface{}) (n int, err error) {
   c.Set()
   defer c.unset()
   return fmt.Fprintln(Output, a...)
}

以上就是Go语言实现彩色输出示例详解的详细内容,更多关于Go语言彩色输出的资料请关注好代码网其它相关文章!

标签: Go 彩色输出