2013-08-17 29 views
1
void setFontSize() 
{ 
    HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE); 
    PCONSOLE_FONT_INFOEX lpConsoleCurrentFontEx = new CONSOLE_FONT_INFOEX(); 
    lpConsoleCurrentFontEx->cbSize = sizeof(CONSOLE_FONT_INFOEX); 
    GetCurrentConsoleFontEx(hConsole, 0 , lpConsoleCurrentFontEx); 
    lpConsoleCurrentFontEx->dwFontSize.X = 8; 
    lpConsoleCurrentFontEx->dwFontSize.Y = 16; 
    SetCurrentConsoleFontEx(hConsole, 0, lpConsoleCurrentFontEx); 
} 

我正在更改控制台中的字体大小。我在尺寸dwFontSize.XdwFontSize.Y中遇到了一些问题。我想要的尺寸非常大。已知哪些值可用?它是否遵循某种模式?因为如果我插入明显不能接受的东西,它会使用默认值。或者更容易将字体类型更改为Lucida Console及其大小,而不是默认的光栅字体?在那种情况下,我该怎么做?Visual C++ 2010控制台应用程序dwFontSize值?

回答

0

如果你打开一个DOS提示符(开始 - >运行 - > CMD.EXE),在窗口图标,左键点击右键,选择属性,并单击字体选项卡,可以看到哪些字体/大小被支持。

enter image description here

+0

是的,那是我做的第一件事。事情是,我用了一个不在列表中的更大尺寸,并且它工作正常。但正如我所说,我希望它变得很大。像Lucida的72px一样。 –

0

光栅字体不能扩展。如果您想设置任意大小,则需要更改为可缩放的字体(如Consolas或Lucida Console),然后更改大小。要选择特定的字体,请在CONSOLE_FONT_INFOEX的FaceName字段中指定字体名称。

相关问题