脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Golang - Go语言实现彩色输出示例详解

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

2022-11-24 10:35爱吃红薯粉 Golang

这篇文章主要为大家介绍了Go语言实现彩色输出示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

说明

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

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

说明

支持Linux彩色输出

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

支持Windows彩色输出

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

Golang IDE输出是不支持的

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

使用

效果图

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

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
",color.CyanString("heihei"))
   fmt.Printf("color: %s
",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语言彩色输出的资料请关注服务器之家其它相关文章!

原文地址:https://juejin.cn/post/7119751644966813703

延伸 · 阅读

精彩推荐
  • Golanggolang端口占用检测的使用

    golang端口占用检测的使用

    这篇文章主要介绍了golang端口占用检测的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随...

    csd_ct13552021-04-21
  • GolangGo程序员踩过的defer坑错误处理

    Go程序员踩过的defer坑错误处理

    这篇文章主要为大家介绍了Go程序员踩过的defer坑错误处理,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪...

    yongxinz11952022-10-20
  • Golanggolang时间、时区、格式的使用方法

    golang时间、时区、格式的使用方法

    这篇文章主要介绍了golang时间、时区、格式的使用方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 ...

    alex_02313592020-05-24
  • GolangGolang切片删除指定元素的三种方法对比

    Golang切片删除指定元素的三种方法对比

    Go语言并没有提供用于删除元素的语法或接口,而是通过利用切片本身的特性来删除元素—追加元素,这篇文章主要给大家介绍了关于Golang切片删除指定元素的...

    恋喵大鲤鱼9972022-10-26
  • Golanggolang使用http client发起get和post请求示例

    golang使用http client发起get和post请求示例

    这篇文章主要介绍了golang使用http client发起get和post请求示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的...

    排骨瘦肉丁15112020-06-04
  • GolangGo语言中的函数式编程实践

    Go语言中的函数式编程实践

    这篇文章主要介绍了Go语言中的函数式编程实践,主要讲解Go语言中的函数式编程概念和使用。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一...

    Oo若离oO4992020-05-15
  • Golang利用Golang如何调用Linux命令详解

    利用Golang如何调用Linux命令详解

    这篇文章主要给大家介绍了Golang中使用os/exec来执行 Linux 命令的相关资料,文中给出了详细的示例代码,对大家具有一定的参考学习价值,需要的朋友们下...

    田飞雨的网站12532020-05-06
  • GolangGo错误和异常CGO fallthrough处理教程详解

    Go错误和异常CGO fallthrough处理教程详解

    这篇文章主要为大家介绍了Go错误和异常CGO fallthrough使用教程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪...

    王中阳Go4112022-11-12