c ++如何在WriteConsoleOutput中使用ANSI转义代码?

时间:2019-02-20 15:36:21

标签: c++ console windows-console ansi-escape

我的缓冲区:

CHAR_INFO *ciScreenBuffer = new CHAR_INFO[bufferWidth * bufferHeight];

如何使用这样的ANSI代码为输出字符着色?

"\x1b[38;2;R;G;Bm""

我使用的是PS

WriteConsoleOutputA(hConsoleOutput, ciScreenBuffer, { (SHORT)bufferWidth, (SHORT)bufferHeight }, { 0, 0 }, &writeRegion);

1 个答案:

答案 0 :(得分:0)

WriteConsoleOutput既不使用也不分析ANSI序列。您将颜色信息作为传递的CHAR_INFO数据的一部分提供。

要向输出中添加颜色,请在添加要显示的字符时更新ss.push_back(name[i]); 数组的颜色成员。例如,根据您的评论之一的示例,

ciScreenBuffer