gpt4 book ai didi

c++ - 你可以使用带有 vt100 转义码的十六进制颜色值 c++

转载 作者:行者123 更新时间:2023-12-03 07:04:35 24 4
gpt4 key购买 nike

我刚刚学会了如何使用 vt100 转义码在终端中更改背景和文本颜色(\033[30m\033[40m)。我想知道是否有一种方法可以使用十六进制颜色代码,而不是局限于使用 30 - 37 或 40 - 47 获得的 8 种颜色。类似于:\033[#48FF1Fm。如果这是不可能的,我不会感到惊讶,但我认为这值得一问。

最佳答案

VT-100 是一个旧终端,我很惊讶它有颜色转义码!

另见堆栈溢出 List of ANSI color escape sequences其中有一些很好的答案。

以下部分来自 ANSI/VT100 Terminal Control Escape Sequences提供了一个例子。

Set Attribute Mode  <ESC>[{attr1};...;{attrn}m
Sets multiple display attribute settings. The following lists standard attributes:
0 Reset all attributes
1 Bright
2 Dim
4 Underscore
5 Blink
7 Reverse
8 Hidden

Foreground Colours
30 Black
31 Red
32 Green
33 Yellow
34 Blue
35 Magenta
36 Cyan
37 White

Background Colours
40 Black
41 Red
42 Green
43 Yellow
44 Blue
45 Magenta
46 Cyan
47 White

然而,看起来不仅是您找到的标准颜色,根据设备支持,还有看起来像是调色板机制的东西。

然而看到这篇文章Bash tips: Colors and formatting (ANSI/VT100 Control Sequences以获得带有附加链接的更详尽的列表。该网页还有一个终端兼容性图表,显示了几种不同 VT-100 终端仿真器之间的一些转义码处理差异。

对于 256 种前景颜色,转义序列是“ [38;5;ColorNumberm”,其中颜色编号 ColorNumber 来自所提供的表格。看起来“m”是颜色编号后的必需字符。

页面中的 bash 代码示例是 echo -e "\e[38;5;82mHello\e[38;5;198mWorld" 它将打印 "绿色的“你好”和紫色的“世界”。

对于 256 种背景颜色,转义序列是“ [48;5;ColorNumberm”。

网页还介绍了如何将多个属性组合起来,通过属性之间用分号隔开,实现前景色和背景色兼顾等效果。提供的 bash 代码示例是 echo -e "\e[1;31;42m 是的,它很糟糕\e[0m",它在绿色背景上显示红色文本文本加粗。

关于c++ - 你可以使用带有 vt100 转义码的十六进制颜色值 c++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32523613/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com