Расстояние между буквами в CStatic Control?

Есть ли способ установить интервал между буквами в метке CStatic? Так что "TEST" будет выглядеть "T E S T"? Я попробовал это с помощью метода SetFont (), используя LOGFONT и его параметры следующим образом:

LOGFONT lf;
memset(&lf, 0, sizeof(lf));
lf.lfHeight = -24;
lf.lfWidth = -17;
lf.lfWeight = FW_THIN;
lf.lfOutPrecision = OUT_TT_ONLY_PRECIS;
lf.lfQuality = ANTIALIASED_QUALITY;
wcscpy_s(lf.lfFaceName, m_mainFont.GetFontFamilyName().c_str());

CFont font;
font.CreateFontIndirectW(&lf);

m_staticCtl.SetFont(&font);

Параметр lfWidth, похоже, не устанавливает никакого интервала, он просто растягивает символы по ширине.

Есть ли опция, позволяющая использовать межбуквенный интервал в CStatic Control или CFont? Или я мог как-то манипулировать рисунком в унаследованном классе CStatic?


Edit: я говорю о межбуквенном интервале. ТЕСТ был просто примером ... Я надеялся, что это ясно. Мне нужен определенный межбуквенный интервал между символами в пикселях (а не дополнительные символы пробела).


person Vinz    schedule 21.09.2014    source источник


Ответы (1)


Это то, что тебе надо?

«Межсимвольный интервал контролируется с помощью вызова GDI SetTextCharacterExtra. Другой ответ - использовать ExtTextOut» .... http://social.msdn.microsoft.com/Forums/vstudio/en-US/538607f8-0d88-42f3-b6bc-f3008002b607/how-to-change-the-lineheight-and-letterpacing-value-when-drawing-text-in-gdiplus?Forum=vcgeneral

person sunpochin    schedule 24.09.2014