@@ -469,29 +469,83 @@ rgb.Println("rgb color")
469
469
rgb.C256 ().Println (" 256 color" )
470
470
```
471
471
472
- ** 更多转换方法转换为 ` RGBColor ` ** :
472
+ ### 颜色转换方法
473
+
474
+ ` color ` 内置了许多颜色转换工具方法
475
+
476
+ ``` go
477
+ func Basic2hex (val uint8 ) string
478
+
479
+ func Bg2Fg(val uint8) uint8
480
+ func Fg2Bg(val uint8) uint8
481
+
482
+ func C256ToRgb(val uint8) (rgb []uint8)
483
+ func C256ToRgbV1(val uint8) (rgb []uint8)
484
+
485
+ func Hex2basic(hex string, asBg ...bool) uint8
486
+ func Hex2rgb(hex string) []int
487
+ func HexToRGB(hex string) []int
488
+ func HexToRgb(hex string) (rgb []int)
489
+
490
+ func HslIntToRgb(h, s, l int) (rgb []uint8)
491
+ func HslToRgb(h, s, l float64) (rgb []uint8)
492
+ func HsvToRgb(h, s, v int) (rgb []uint8)
493
+
494
+ func Rgb2ansi(r, g, b uint8, isBg bool) uint8
495
+ func Rgb2basic(r, g, b uint8, isBg bool) uint8
496
+ func Rgb2hex(rgb []int) string
497
+ func Rgb2short(r, g, b uint8) uint8
498
+ func RgbTo256(r, g, b uint8) uint8
499
+ func RgbTo256Table() map[string]uint8
500
+ func RgbToAnsi(r, g, b uint8, isBg bool) uint8
501
+ func RgbToHex(rgb []int) string
502
+ func RgbToHsl(r, g, b uint8) []float64
503
+ func RgbToHslInt(r, g, b uint8) []int
504
+ ```
505
+
506
+ **转换为 `RGBColor`**:
473
507
474
508
- `func RGBFromSlice(rgb []uint8, isBg ...bool) RGBColor`
475
509
- `func RGBFromString(rgb string, isBg ...bool) RGBColor`
476
510
- `func HEX(hex string, isBg ...bool) RGBColor`
477
511
- `func HSL(h, s, l float64, isBg ...bool) RGBColor`
478
512
- `func HSLInt(h, s, l int, isBg ...bool) RGBColor`
479
513
480
- ## 方法参考
514
+ ## 工具方法参考
481
515
482
516
一些有用的工具方法参考
483
517
484
- - ` Disable() ` disable color render
485
- - ` SetOutput(io.Writer) ` custom set the colored text output writer
486
- - ` ForceOpenColor() ` force open color render
518
+ - `Disable()` 禁用颜色渲染输出
519
+ - `SetOutput(io.Writer)` 自定义设置渲染后的彩色文本输出位置
520
+ - `ForceOpenColor()` 强制开启颜色渲染
487
521
- `ClearCode(str string) string` Use for clear color codes
488
522
- `Colors2code(colors ...Color) string` Convert colors to code. return like "32;45;3"
489
523
- `ClearTag(s string) string` clear all color html-tag for a string
490
524
- `IsConsole(w io.Writer)` Determine whether w is one of stderr, stdout, stdin
491
- - ` HexToRgb(hex string) (rgb []int) ` Convert hex color string to RGB numbers
492
- - ` RgbToHex(rgb []int) string ` Convert RGB to hex code
493
525
- 更多请查看文档 https:// pkg.go.dev/github.com/gookit/color
494
526
527
+ ### 检测支持的颜色级别
528
+
529
+ `color` 会自动检查当前环境支持的颜色级别
530
+
531
+ ```go
532
+ // Level is the color level supported by a terminal.
533
+ type Level = terminfo.ColorLevel
534
+
535
+ // terminal color available level alias of the terminfo.ColorLevel*
536
+ const (
537
+ LevelNo = terminfo.ColorLevelNone // not support color.
538
+ Level16 = terminfo.ColorLevelBasic // basic - 3/4 bit color supported
539
+ Level256 = terminfo.ColorLevelHundreds // hundreds - 8-bit color supported
540
+ LevelRgb = terminfo.ColorLevelMillions // millions - (24 bit)true color supported
541
+ )
542
+ ```
543
+
544
+ - `func SupportColor() bool` 当前环境是否支持色彩输出
545
+ - `func Support256Color() bool` 当前环境是否支持256色彩输出
546
+ - `func SupportTrueColor() bool` 当前环境是否支持(RGB)True色彩输出
547
+ - `func TermColorLevel() Level` 获取当前支持的颜色级别
548
+
495
549
## 使用Color的项目
496
550
497
551
看看这些使用了 https:// github.com/gookit/color 的项目:
0 commit comments