我想改变我正在使用一个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

然而,谁可以帮我找出从该列表中的人是固定的宽度..谢谢:)

有帮助吗?

解决方案

编程方式,可以判断如果字体使用正比:

const CFont* myFont; 
// Initialize your font
// ....
TBool isProportional = (myFont->FontSpecInTwips().iTypeface.Attributes() & TTypeFace::EProportional);

顺便说一句,你可能会更好枚举设备上的字体和/或使用逻辑字体API不是依赖于静态字体存取器函数。

其他提示

您可以使用 FontViewer 应用程序来查看,并找出哪些字体的是成比例的和固定宽度。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top