Skip to content

questocat/console-color

Repository files navigation

console-color

A simple command line colorize library

StyleCI Build Status Code Coverage Scrutinizer Code Quality Packagist

Installation

Using Composer to add the package to your project's dependencies:

composer require questocat/console-color

Usage

$consoleColor = new ConsoleColor();

// 字体色渲染
$consoleColor->red('红色字体');
$consoleColor->red()->render('红色字体');
$consoleColor->blue('蓝色字体');
$consoleColor->blue()->render('蓝色字体');

// 背景色渲染
$consoleColor->redBackground('红色背景');
$consoleColor->redBackground()->render('红色背景');
$consoleColor->blueBackground('蓝色背景');
$consoleColor->blueBackground()->render('蓝色背景');

// 控制序列渲染
$consoleColor->bold('粗体文字');
$consoleColor->underline('带下划线的文字');
$consoleColor->underline()->render('带下划线的文字');

// 内置主题渲染
$consoleColor->info('输出提示信息');
$consoleColor->error('输出错误信息');
$consoleColor->warning('输出警告信息');
$consoleColor->success('输出成功信息');

// 添加自定义颜色
$consoleColor->addColor('fooBar', 94);              // 添加单个颜色
$consoleColor->fooBar('自定义颜色字体,单个属性');
$consoleColor->addColor('fooBar', [1, 4, 41, 92]);  // 添加单个颜色
$consoleColor->fooBar('自定义颜色字体,含多个属性');
$consoleColor->addColor(['foo' => [38, 5, 5, 48, 5, 3], 'bar' => [48, 5, 28]]);  // 添加多个颜色(256)
$consoleColor->foo('自定义颜色字体,含多个属性');
$consoleColor->foo()->bar('自定义颜色字体,含多个属性');

// 支持 88/256 Colors
$consoleColor->color256(12)->render('8/256 字体');             // 字体颜色
$consoleColor->color256(12, FOREGROUND)->render('8/256 字体'); // 字体颜色
$consoleColor->color256(25, BACKGROUND)->render('8/256 背景'); // 背景颜色

// 组合渲染
$consoleColor->blueBackground()->red('蓝色背景,红色字体');
$consoleColor->red()->blueBackground()->render('蓝色背景,红色字体,其他组合方式');
$consoleColor->blue()->yellowBackground()->red()->render('黄色背景,红色字体');
$consoleColor->color256(6)->yellowBackground()->render('8/256 字体,黄色背景');
$consoleColor->red()->color256(60, BACKGROUND)->render('8/256 背景,红色字体');

Example will output

example-output

Colors/Formats Api

Foreground Background Formats Themes
default defaultBackground bold info
black blackBackground dim warning
red redBackground underline error
green greenBackground blink success
yellow yellowBackground invert
blue blueBackground hidden
magenta magentaBackground
cyan cyanBackground
lightGray lightGrayBackground
darkGray darkGrayBackground
lightRed lightRedBackground
lightGreen lightGreenBackground
lightYellow lightYellowBackground
lightBlue lightBlueBackground
lightMagenta lightMagentaBackground
lightCyan lightCyanBackground
white whiteBackground

Reference

License

Licensed under the MIT license.