S60 3rd中设置字体类型与字体大小
来源:互联网 发布:c语言布尔类型怎么输出 编辑:程序博客网 时间:2024/05/18 13:48
//首先查找机器支持的字体个数.
TInt iNumTypefaces = iCoeEnv->ScreenDevice()->NumTypefaces();
//然后就可以查找所有的字体
for(TInt i = 0; i < iNumTypefaces; i++)
{
TTypefaceSupport myTypefaceSupport;
iCoeEnv->ScreenDevice()->TypefaceSupport(myTypefaceSupport,i);
TBuf<KMaxTypefaceNameLength> aTemp;
aTemp.Copy(myTypefaceSupport.iTypeface.iName.Des());
}//这样就可以得到所有的aTypefaceName.
//设置指定的字体
TFontSpec fontSpec;
fontSpec.iTypeface.iName= aTemp;
fontSpec.iHeight = 40;
(这个地方也可以使用相对于别的字体的高度如下:
const CFont* font = CEikonEnv::Static()->SymbolFont();
fontSpec.iHeight = font->FontSpecInTwips().iHeight + 10;
)
//生成新的字体
CEikonEnv::Static()->ScreenDevice()->GetNearestFontInTwips(newFont, fontSpec);
//最后使用字体
CWindowGc::UseFont(newFont);
字体大小样式,全套的(注释掉的代码也是有效的)
const CFont* font = iEikonEnv->SymbolFont();
iOffScreenBitmapGc->UseFont( font );
iOffScreenBitmapGc->DrawText(_L("hello world"),TPoint(0,20) );
iOffScreenBitmapGc->DiscardFont();
CFont* fontNew = NULL;
TFontSpec fontSpec;
fontSpec.iTypeface.iName=font->FontSpecInTwips().iTypeface.iName;// KFontName;
//if (text->Bold())
//{
// // Set Bold
// fontSpec.iFontStyle.SetStrokeWeight(EStrokeWeightBold);
//}
//if (text->Italic())
//{
// // Set Italic
// fontSpec.iFontStyle.SetPosture(EPostureItalic);
//}
//fontSpec.iFontStyle.SetBitmapType(EAntiAliasedGlyphBitmap);
//fontSpec.iHeight=text->Height();
//// Set Underline
//if (text->Underline())
//{
// iGc->SetUnderlineStyle(EUnderlineOn);
//}
fontSpec.iHeight = font->FontSpecInTwips().iHeight + 40;
iOffScreenBitmapDevice->GetNearestFontInTwips(fontNew,fontSpec);
if (fontNew != NULL)
{
iOffScreenBitmapGc->UseFont( fontNew );
iOffScreenBitmapGc->DrawText(_L("hello world"),TPoint(0,100) );
iOffScreenBitmapGc->DiscardFont();
iOffScreenBitmapDevice->ReleaseFont(fontNew);
}
const CFont* font = iEikonEnv->SymbolFont();
iOffScreenBitmapGc->UseFont( font );
iOffScreenBitmapGc->DrawText(_L("hello world"),TPoint(0,20) );
iOffScreenBitmapGc->DiscardFont();
CFont* fontNew = NULL;
TFontSpec fontSpec;
fontSpec.iTypeface.iName=font->FontSpecInTwips().iTypeface.iName;// KFontName;
//if (text->Bold())
//{
// // Set Bold
// fontSpec.iFontStyle.SetStrokeWeight(EStrokeWeightBold);
//}
//if (text->Italic())
//{
// // Set Italic
// fontSpec.iFontStyle.SetPosture(EPostureItalic);
//}
//fontSpec.iFontStyle.SetBitmapType(EAntiAliasedGlyphBitmap);
//fontSpec.iHeight=text->Height();
//// Set Underline
//if (text->Underline())
//{
// iGc->SetUnderlineStyle(EUnderlineOn);
//}
fontSpec.iHeight = font->FontSpecInTwips().iHeight + 40;
iOffScreenBitmapDevice->GetNearestFontInTwips(fontNew,fontSpec);
if (fontNew != NULL)
{
iOffScreenBitmapGc->UseFont( fontNew );
iOffScreenBitmapGc->DrawText(_L("hello world"),TPoint(0,100) );
iOffScreenBitmapGc->DiscardFont();
iOffScreenBitmapDevice->ReleaseFont(fontNew);
}
- S60 3rd中设置字体类型与字体大小
- 设置字体类型和字体大小
- symbian s60 3rd 铃声设置问题
- S60 3rd Edition和S60 3rd Edition, FP1中不同的浏览器UID
- S60 3rd下实现Video Call 与 VoIP Call
- Symbian中音频API的使用 (S60 3rd FP1)
- Symbian中音频API的使用 (S60 3rd FP1)
- S60 3rd MMP CAPABILITY
- S60 3rd MMP CAPABILITY
- S60 3rd签名问题
- S60 3rd MMP CAPABILITY
- S60 3rd MMP CAPABILITY
- Qt程序设置整个软件字体类型和字体大小
- 通过S60 3rd Edition SDK 看清S60 3.0系统
- 给Android Studio设置代码字体大小与界面字体样式
- S60 3rd资源本地化的实现
- 搭建Symbian S60 3rd 编程环境
- S60 3rd SDK 的一些TIPS
- 如何让你的XP桌面与Bing同步
- 最长不完全匹配子串频率计算-eaglet 的解法
- oracle 升级 遇到 NoServicesForProcessException 问题
- テレビ日本語教室トレーニング 第二回
- 网络游戏外挂制作
- S60 3rd中设置字体类型与字体大小
- 资源链接
- 第一章 PHP概述 (重点回顾)
- dd
- ACE - ACE_INET_Addr, ACE_SOCK_Acceptor, ACE_SOCK_Connector, ACE_SOCK_Stream
- C++内存管理
- Div+CSS布局入门教程之一
- 关于recv()和send()的返回值
- 两个表同时更新多条数据