ホームページ >バックエンド開発 >C++ >カラーテキストを Linux ターミナルに出力するにはどうすればよいですか?

カラーテキストを Linux ターミナルに出力するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-13 01:10:13599ブラウズ

How Can I Output Colored Text to a Linux Terminal?

Linux 端末へのカラー テキストの出力

Ansi カラー コードを使用して、カラー テキストをサポートする端末にカラー テキストを出力できます。端末がこれらのコードをサポートしていない場合、これらのコードは意図しない文字として表示されます。

ANSI カラー コード構文

太字の赤いテキストを印刷するサンプル コード:

cout << "3[1;31mbold red text3[0m\n";

ここで、33 は ESC 文字 (ASCII 27) を表します。次の [;] で​​区切られた数値コードは次を指定します:

  • 1: 太字形式
  • 31: 赤の前景色

前景色と背景色のコード

Colour Foreground Background
Black 30 40
Red 31 41
Green 32 42
Yellow 33 43
Blue 34 44
Magenta 35 45
Cyan 36 46
White 37 47

さらに、以下を使用できます:

Code Description
0 Reset (default)
1 Bold/Bright
4 Underline
7 Inverse colours
21 Bold/Bright off
24 Underline off
27 Inverse colours off

端末サポートの確認

端末がカラーをサポートしているかどうかを確認するにはシーケンス:

  1. TERM 環境を読み取る変数。
  2. terminfo データベースで TERM 値を検索します。
  3. 「colors」機能を確認します。

「colors」機能が存在する場合、端末はおそらく ANSI カラーコードをサポートしています。サポートされているコードの完全なリストについては、terminfo データベースまたは Wikipedia ページを参照してください。

以上がカラーテキストを Linux ターミナルに出力するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。