概述
struct CONSOLE_FONT
{
DWORD index;
COORD dim;
};
typedef BOOL (WINAPI *PROCSETCONSOLEFONT)(HANDLE, DWORD);
typedef BOOL (WINAPI *PROCGETCONSOLEFONTINFO)(HANDLE,BOOL,DWORD,CONSOLE_FONT*);
typedef COORD (WINAPI *PROCGETCONSOLEFONTSIZE)(HANDLE,DWORD);
typedef DWORD (WINAPI *PROCGETNUMBEROFCONSOLEFONTS)();
typedef BOOL (WINAPI *PROCGETCURRENTCONSOLEFONT)(HANDLE,BOOL,CONSOLE_FONT*);
PROCSETCONSOLEFONT SetConsoleFont;
PROCGETCONSOLEFONTINFO GetConsoleFontInfo;
PROCGETCONSOLEFONTSIZE GConsoleFontSize;
PROCGETNUMBEROFCONSOLEFONTS GetNumberOfConsoleFonts;
PROCGETCURRENTCONSOLEFONT GCurrentConsoleFont;
int _tmain(int argc, _TCHAR* argv[])
{
int nNumFont;
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
HMODULE hKernel32 = GetModuleHandle(L"kernel32");
SetConsoleFont = (PROCSETCONSOLEFONT)GetProcAddress(hKernel32,"SetConsoleFont");
GetConsoleFontInfo = (PROCGETCONSOLEFONTINFO)GetProcAddress(hKernel32,"GetConsoleFontInfo");
GConsoleFontSize = (PROCGETCONSOLEFONTSIZE)GetProcAddress(hKernel32,"GetConsoleFontSize");
GetNumberOfConsoleFonts = (PROCGETNUMBEROFCONSOLEFONTS)GetProcAddress(hKernel32,"GetNumberOfConsoleFonts");
GCurrentConsoleFont = (PROCGETCURRENTCONSOLEFONT)GetProcAddress(hKernel32,"GetCurrentConsoleFont");
nNumFont = GetNumberOfConsoleFonts();
CONSOLE_FONT *pFonts = new CONSOLE_FONT[nNumFont];
GetConsoleFontInfo(hConsole, 0, nNumFont, pFonts);
SetConsoleFont(hConsole, pFonts[5].index);
cout << "This is Console C++!" << endl;
return 0;
}
字体的大小确实是可以设置。。。但是 GetConsoleFontInfo 函数获取到的 pFonts 信息是无法改变。。。
因为 SetConsoleFont 设置的是字体的 pFonts[0].index ,也就是字体索引号。。
最后
以上就是魔幻香菇为你收集整理的C/C++ 修改控制台字体大小。。的全部内容,希望文章能够帮你解决C/C++ 修改控制台字体大小。。所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复