Go语言实现彩色输出示例详解
作者:爱吃红薯粉 发布时间:2023-09-14 01:19:45
标签:Go,彩色输出
简介
在逛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...)
}
来源:https://juejin.cn/post/7119751644966813703
0
投稿
猜你喜欢
- 导言:在前面的教程里我们探讨了如何为GridView控件添加radio buttons列。当用户最多只能选择一项数据时,我们可以在用户界面里
- 使用MySQL,安全问题不能不注意。以下是MySQL提示的23个注意事项:1。如果客户端和服务器端的连接需要跨越并通过不可信任的网络,那么就
- 有朋友问,在数据库中如何查询数据所在的行,一般我们建议一个自增字段就可以了.但是有时却会删除数据,那么那个自增字段也不正确了先不管朋友们为什
- Mysql数据库备份和还原常用的命令是进行Mysql数据库备份和还原的关键,没有命令,什么都无从做起,更谈不上什么备份还原,只有给系统这个命
- XML是一个精简的SGML,它将SGML的丰富功能与HTML的易用性结合到Web的应用中。XML保留了SGML的可扩展功能,这使XML从根本
- CSS换肤技术一直是一个比较热门的话题,通过给HTML文档不同的CSS样式应用,实现完全不同或风格迥异的页面效果。这样的技术一直为大家所津津
- 一、网络请求在uni中可以调用uni.request方法进行请求网络请求需要注意的是:在小程序中网络相关的 API 在使用前需要配置域名白名
- 1.新建一个vs2003的web工程,取名为XMLTest &nbs
- 上文:栅格:从混乱到秩序Jacci Howard Bear 的英文原文:http://desktoppub.about.com/od/gri
- 前言ThinkPHP,是为了简化企业级应用开发和敏捷WEB应用开发而诞生的开源轻量级PHP框架。随着框架代码量的增加,一些潜在的威胁也逐渐暴
- 一、图像噪声图像噪声是图像在获取或者传输过程中受到随机信号干扰,妨碍人们对图像理解及分析处理的信号。很多时候将图像看作随机过程,因而描述噪声
- 代码如下:url="http://www.cidianwang.com/" wstr=getHTTPPage(
- 从CNNIC在2009年的报告中可以看到,超过80%的网民购物之前都要看评论(包括本站、其他站评论),超过80%的网民都比较信任口碑(包括网
- 内连接(inner join)。 外连接: 全连接(full join)、左连接(left join)、右连接(right join)。 交
- 在document.form1.submit();后加document.body.innerHtml = "W
- 本文实例为大家分享了JavaScript实现年历效果的具体代码,供大家参考,具体内容如下<!DOCTYPE html><h
- Lightbox里面的一个函数,能把页面实际的高宽与浏览器可视面积的高宽保存在一个数组中..非常好用.什么是Lightbox?下载light
- Dreamweaver从出道以来,其简便易用而又功能强大的“行为”(Behavior)一直是大家所关注的热点之一。在Dreamweaver
- 由于网络带宽以及某些WAP服务器DECK传输的限制,所以DECK越小越好,最好不要超过1.2K。如果你的需求很复杂,最好分成几个DECK来完
- 在开发数据库应用中,经常会遇到处理时间的问题,如查询指定时间的记录等。下面就这些常见的问题,结合自己的一些经验,和大家探讨一下这类问题。首先