我喜欢 Perl 的Term::ANSIColor
模块,但是否可以打印出提供的颜色以外的颜色?
我正在尝试打印出范围在深红色和亮绿色之间的单词,它们之间有相当多的步数。有没有办法提供 RGB 值或改变文本颜色的东西?
我喜欢 Perl 的Term::ANSIColor
模块,但是否可以打印出提供的颜色以外的颜色?
我正在尝试打印出范围在深红色和亮绿色之间的单词,它们之间有相当多的步数。有没有办法提供 RGB 值或改变文本颜色的东西?
您使用Term::ExtendedColor。您可以通过此模块使用 256 种颜色。
一些终端甚至接受完整的 8 位 RGB 颜色规范。
$ perl -E 'say "\e[38:2:255:100:80mHello\e[m"'
Hello
这可能以rgb(255,100,80)
粉红色打印。取决于你的终端。
作为从任意 RGB 组合中获取 xterm256 颜色值的一种方法,您可能还喜欢Convert::Color
use strict;
use warnings;
use Convert::Color;
use Convert::Color::XTerm;
foreach my $hue ( map { $_ * 15 } 0 .. 120/15 ) {
my $c = Convert::Color->new( "hsv:$hue,1,1" );
my $index = $c->as_xterm->index;
print "\e[38:5:${index}mHue=$hue\e[m\n";
}
我会在此处粘贴输出,但很难在评论中传达颜色:)