Перед вами
очередной выпуск рассылки "Программирование на WinApi" Переводы многих функций Win32API, которые часто используются
в данной рассылке, вы можете получать, подписавшись на дружественную
рассылку "WinAPI на
русском". Справочник по функциям Win32API вы
можете посмотреть на сайте BcbDev.ru в разделе MSDN
по-русски.
Перечисление шрифтов в
системе
Это может оказаться полезным,
когда вам понадобится создать список всех шрифтов, вместо стандартного
диалога выбора шрифта.
#include <windows.h>
#include <stdio.h>
char Fonts[2048][256];
DWORD FontsNo = 0;
int CALLBACK EnumFontsProc(CONST LOGFONT *lplf, CONST TEXTMETRIC *lptm, DWORD dwType, LPARAM lpData)
{
strcpy(Fonts[FontsNo++], lplf->lfFaceName);
return(true);
}
int main()
{
HDC hDC = GetDC(NULL);
EnumFonts(hDC, NULL, EnumFontsProc, NULL);
ReleaseDC(NULL, hDC);
for (DWORD i = 0; i < FontsNo; i++)
printf("%s\r\n", Fonts[i]);
printf("\r\nВ настоящее время в системе установлено %d шрифтов..", FontsNo);
return 0;
}