
一、当你面对有图形功能的linux系统时,就比较方便了,直接打开终端,右击终端的空白处(或者空黑处),然后就会出现类似windows中的一系列的改字体的选项,相信接下来的 *** 作大家打击都能很轻松的搞定。
二、那么如果没有图形功能呢?就可以采用如下的指令修改方法,该方法笔者比这多为借鉴的其他大神的 *** 作,笔者也在学习,算是和大家的一同学习和分享。
1.通过console-tools设置控制台字体
1.1.选用并测试合适的字体和字库文件:
复制代码 代码如下:
# ls /usr/share/consolefonts/
1.2.测试选用喜爱的字库文件:
复制代码 代码如下:
# consolechars -f /usr/share/consolefonts/lat9w-16.psf.gz
# consolechars -f /usr/share/consolefonts/lat2-16.psf.gz
1.3.保存控制台默认字体配置:
复制代码 代码如下:
# vi /etc/console-tools/config
将合适的字库文件设置为默认,如果选择lat2-16.psf.gz 字库文件,可将SCREEN_FONT设成:
SCREEN_FONT=lat2-16
1.改变整个控制台的颜色用 system("color 0A")
其中color后面的0是背景色代号,A是前景色代号。各颜色代码如下:
0=黑色
1=蓝色
2=绿色
3=湖蓝色
4=红色
5=紫色
6=黄色
7=白色
8=灰色
9=淡蓝色
A=淡绿色
B=淡浅绿色
C=淡红色
D=淡紫色
E=淡黄色
F=亮白色
2.改变下一个输出或者输入字体和背景的颜色
采用SetConsoleTextAttribute函数,如
White on Black:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE)
Red on Black:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED)
Green on Black:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_GREEN)
Yellow on Black:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN)
Blue on Black:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_BLUE)
Magenta on Black:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_BLUE)
Cyan on Black:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_GREEN | FOREGROUND_BLUE)
Black on Gray:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
BACKGROUND_INTENSITY)
Black on White:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE)
Red on White:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE |
FOREGROUND_RED)
等等。
需要引入头文件:
windows.h
函数原型:
BOOL SetConsoleTextAttribute( HANDLE hConsoleOutput, WORD wAttributes )
wAttributes 的取值含义对应如下:
Attribute Meaning
FOREGROUND_BLUE Text color contains blue.
FOREGROUND_GREEN Text color contains green.
FOREGROUND_RED Text color contains red.
FOREGROUND_INTENSITY Text color is intensified.
BACKGROUND_BLUE Background color contains blue.
BACKGROUND_GREEN Background color contains green.
BACKGROUND_RED Background color contains red.
BACKGROUND_INTENSITY Background color is intensified.
COMMON_LVB_LEADING_BYTE Leading byte.
COMMON_LVB_TRAILING_BYTE Trailing byte.
COMMON_LVB_GRID_HORIZONTAL Top horizontal.
COMMON_LVB_GRID_LVERTICAL Left vertical.
COMMON_LVB_GRID_RVERTICAL Right vertical.
COMMON_LVB_REVERSE_VIDEO Reverse foreground and background attributes.
COMMON_LVB_UNDERSCORE Underscore
用curses库能实现, 很简单, 稍微提一下:start_color() /* 开启彩显模式 */
attron(COLOR_PAIR(1))/* 开启一个颜色对 */
init_pair(1, COLOR_RED, COLOR_WRITE) /* 初始化这个颜色对, 前景色为红, 背景色为白 */
... /* 中间是你要打印的字符 */
attroff(COLOR_PAIR(1))/* 关闭该颜色对 */
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)