c - 有没有办法知道c中终端的背景颜色?
问题描述
我正在创建 ac 程序,该程序使用 ANSI 转义序列参数为某些文本着色,例如printf("\e[38;2;r;g;bm");
在 Ubuntu 中;问题是,如果控制台的背景与前景匹配,文本就会变得不可见。如果我在白色背景中以黑色打印文本,它是完全可见的,但是当相同的代码在黑色背景上运行时,文本是不可见的。
所以我的计划是在运行时获取终端背景颜色并相应地选择文本颜色。
有没有办法在c中获取终端的背景颜色?
解决方案
ncurses
库将窗口和终端数据保存在自己的缓冲区中。如果你使用这个库,你可以读取字符及其属性。使用函数
inch
或类似的
推荐阅读
- php - 阿贾克斯不工作。它没有显示任何错误
- python - 大致等效的部分代码
- android - Android 4.3 中的 Android setcookie 和 setAcceptCookie 方法崩溃
- authentication - 如何在 Visual Studio 中配置我的 Nuget(私人)提要时启用登录选项
- r - 有条件地提取多个子字符串并使用 for 循环为每个子字符串返回一个值
- android - JetPack Jetifier 的 Android Crashlytics 问题
- python - 如何使用 pymongo 解析所有集合的数据
- ios - Stripe Radar 规则不适用于 Apple Pay 待授权
- msbuild - 全新安装时 GAC 缺少 netstandard.dll
- react-native-ios - 使用 iOS 模拟器,React Native 应用程序卡在空白屏幕上