Шрифт с фиксированной шириной - Symbian C++ CEikLabel
Я хочу изменить шрифт, который я использую в CEikLabel на устройстве S60
Я верю, что могу сделать следующее
const CFont* aPlainFont = LatinPlain12();
aLabel->SetFont(aPlainFont);
где LatinPlain12 является одним из этого списка..
Albi12
Alp13
Alpi13
Albi13
alp17
Alb17b
albi17b
alpi17
Aco13
Aco21
Acalc21
LatinBold12
LatinBold13
LatinBold17
LatinBold19
LatinPlain12
Acb14
Acb30
Acp5
Однако, кто может помочь мне узнать, какие из этого списка имеют фиксированную ширину.. Спасибо:)
2 ответа
Решение
Программно, вы можете определить, является ли шрифт пропорциональным, используя:
const CFont* myFont;
// Initialize your font
// ....
TBool isProportional = (myFont->FontSpecInTwips().iTypeface.Attributes() & TTypeFace::EProportional);
Кстати, вам лучше перечислить шрифты на устройстве и / или использовать API логического шрифта, чем полагаться на статические функции доступа к шрифту.
Вы можете использовать приложение FontViewer для просмотра и выяснения, какие из шрифтов пропорциональны и имеют фиксированную ширину.