【问题标题】:Windows API colored output to stdout in Powershell/cmd.exeWindows API 彩色输出到 Powershell/cmd.exe 中的标准输出
【发布时间】:2008-10-30 20:25:40
【问题描述】:

有谁知道在哪里可以找到描述如何使用 API 和/或标准输出在 Windows CLI 界面上输出颜色的参考资料?

【问题讨论】:

    标签: windows colors stdout command-line-interface


    【解决方案1】:

    Win32 console API 有一个函数SetConsoleTextAttribute,可以用来设置文本的前景色和背景色。示例代码为here

    【讨论】:

      【解决方案2】:

      至少还有颜色命令:

      color bg fg
      

      在哪里:

      0: Black
      1: Blue
      2: Green
      3: Cyan
      4: Red
      5: Purple
      6: Yellow
      7: Gray
      8: Silver
      9: Light blue
      A: Lime
      B: Light cyan
      C: Light red
      D: Light purple
      E: Light yellow
      F: White
      

      例子:

      color 80
      

      提供带有黑色文本的银色背景。

      【讨论】:

      • 颜色的暗处是每当你指定一个配色方案时,整个屏幕都使用这个方案,包括已经输出的彩色文本。换句话说,您只能同时看到一种文本颜色。
      【解决方案3】:

      不完全是参考,但它应该可以帮助您在 MSDN 上找到您要查找的内容,请查看:

      http://www.gamedev.net/community/forums/topic.asp?topic_id=457528.

      您可能想查找“WriteConsoleOutput”。

      【讨论】:

        【解决方案4】:

        在 powershell write-host 中采用 -backgroundcolor 和 -foregroundcolor 参数

        【讨论】:

        • 更酷的是,它接受一个数组作为参数!所以这是有效的并产生粉红色:write-host "I'm Pink" -ForegroundColor Red, Blue
        • 哇,这对我来说毫无意义。它使用颜色值的总和作为结果?
        猜你喜欢
        • 2023-03-20
        • 2020-08-31
        • 2014-03-02
        • 2019-05-06
        • 2012-07-11
        • 2021-04-20
        • 1970-01-01
        • 2013-07-27
        • 1970-01-01
        相关资源
        最近更新 更多