الخط عرض ثابت - سيمبيان 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
ولكن، من يستطيع مساعدتي معرفة العرض الذي يتم إصلاح تلك من هذه القائمة .. شكرا:)
المحلول
وبرمجيا، يمكنك تحديد ما إذا كان الخط يتناسب باستخدام:
const CFont* myFont;
// Initialize your font
// ....
TBool isProportional = (myFont->FontSpecInTwips().iTypeface.Attributes() & TTypeFace::EProportional);
وراجع للشغل قد تكون أفضل حالا تعداد الخطوط على الجهاز و / أو باستخدام API خط منطقية من الاعتماد على وظائف استرجاع الخط ثابتة.
نصائح أخرى
يمكنك استخدام FontViewer تطبيق لمشاهدة ومعرفة أي من الخطوط متناسبة وعرض ثابت.
لا تنتمي إلى StackOverflow