我用C ++开发了一个只能在Windows上运行的控制台应用程序。我想在程序运行时更改命令提示符的文本大小。我做了一些搜索但是,我找不到任何可以解决问题的方法。每个人都在谈论改变颜色。
无论如何,如果可以,我怎样才能更改命令提示符的文本大小。
谢谢!
答案 0 :(得分:2)
在获取当前字体信息之前,您必须使用sizeof(CONSOLE_FONT_INFOEX)初始化CONSOLE_FONT_INFOEX结构。
此外,您只能使用可用的尺寸:
BOOL SetConsoleFontSize(COORD dwFontSize){
HANDLE output = GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_FONT_INFOEX info{sizeof(CONSOLE_FONT_INFOEX)};
if (!GetCurrentConsoleFontEx(output, false, &info))
return false;
info.dwFontSize = dwFontSize;
return SetCurrentConsoleFontEx(output, false, &info);
}
答案 1 :(得分:-1)
您可以使用CONSOLE_FONT_INFOEX
结构来指定命令提示写入的文本/格式参数。
有关详情,请点击here。
从上面的链接中提取。
这里有一个完整的例子。我无法说它是否有效,因为显然函数Get / SetCurrentConsoleFontEx仅在windows vista及更高版本中可用。
#include <iostream>
#include <windows.h>
int main(){
HANDLE outcon = GetStdHandle(STD_OUTPUT_HANDLE);//you don't have to call this function every time
CONSOLE_FONT_INFOEX font;//CONSOLE_FONT_INFOEX is defined in some windows header
GetCurrentConsoleFontEx(outcon, false, &font);//PCONSOLE_FONT_INFOEX is the same as CONSOLE_FONT_INFOEX*
font.dwFontSize.X = 7;
font.dwFontSize.Y = 12;
SetCurrentConsoleFontEx(outcon, false, &font);
SetConsoleTextAttribute(outcon, 0x0C);
std::cout << "I'm red";
std::cin.get();
return 0;
}