2008-12-05 87 views
1

我想改變我使用的CEikLabel S60設備上寬字體 - Symbian C++的CEikLabel

我相信我能做到以下

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 

然而,誰可以幫我找出從該列表中的人是固定的寬度..謝謝:)

回答

0

編程方式,你可以判斷一個字體使用正比:

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

順便說一句,你可能會更好枚舉設備上的字體和/或使用邏輯字體API不是依賴靜態字體訪問功能。

1

您可以使用FontViewer應用程序查看並找出哪些字體是比例和固定寬度。

+0

我無法從http://www.newlc.com/files/FontViewer-S60.sis上將它安裝到我的N95上 - 說'安裝不支持' - 我從截圖中看到,雖然Courier可用作固定寬度字體....你知道如何作爲CFont類型訪問它嗎?謝謝;) – adam 2008-12-05 14:59:19