Цветной вывод в консоль с++

Мне нужно придать некоторые эфекты выведенному в консоль тексту. Нужно его окрасить, помигать им, сместить к центру консоли. Можно ли окрасить вывод с помощью стандартных средств с++? Есть ли сторонние библиотеки, помогающие совершать подобного рода действия? Работаю на linux


Ответы (2 шт):

Автор решения: BlueScreen

Я бы посоветовал termcolor для C++ тык

Использование очень простое:


#include <iostream>
#include <termcolor/termcolor.hpp>

int main(int /*argc*/, char** /*argv*/)
{
    std::cout << termcolor::red << "Hello, ";
    std::cout << termcolor::color<100> << "Colorful ";
    std::cout << termcolor::color<211, 54, 130> << "World!";
    std::cout << std::endl;
    return 0;
}

Подробнее можно прочитать в документации PDF

По мне выглядит вполне достойно: фото с гитхаба

Что бы помигать вам нужно использовать метод termcolor::nocolorize

и

termcolor::colorize

Чистить консоль и менять методы друг на друга

→ Ссылка
Автор решения: TigerTV.ru

Можно использовать ANSI_escape_code для Linux, MacOS, Unix-like, Windows 10 :

#include <iostream>

int main() {
    std::cout << "\e[1;31m This is red text \e[0m" << std::endl;    
}

Можно менять не только цвет текста, но и фона, есть подчеркивание, подмигивание и т.д.

→ Ссылка