MFC 显示字体问题,你看那个汉字怎么那么显示啊。。。

我要的效果是大小都横着显示。。。CRectrc;GetClientRect(rc);CDC*dc=GetDC();CStringstr(_T("abc大小"));dc->... 我要的效果是大小都横着显示。。。
CRect rc;
GetClientRect(rc);
CDC* dc=GetDC();
CString str(_T( "abc大小"));
dc->SetBkMode(TRANSPARENT);
dc->SetTextColor(RGB(0,0,255));
CFont font;
LOGFONT lf;
memset(&lf,0,sizeof(LOGFONT));
lf.lfHeight = -14;
lf.lfWeight = FW_NORMAL;
lf.lfClipPrecision = CLIP_LH_ANGLES;
lstrcpy(lf.lfFaceName, L"@宋体");
lf.lfEscapement = 900;
font.CreateFontIndirect(&lf);
CFont *pOldFont = dc->SelectObject(&font);
//for(int i=0;i<;i++)
dc->TextOut(rc.right/2, rc.bottom/2,str);
dc->SelectObject(pOldFont);
font.DeleteObject();

//上面是代码。。。怎么搞,才能达到效果
展开
 我来答
百度网友9de5b9a
2012-08-09 · TA获得超过894个赞
知道小有建树答主
回答量:361
采纳率:0%
帮助的人:461万
展开全部

 CRect rc;   

 

  GetClientRect(&rc);   

 

  CDC* dc=GetDC();

 

  CString str(_T( "abc大小"));   

 

  dc->SetBkMode(TRANSPARENT);   

 

  dc->SetTextColor(RGB(0,0,255));   

 

  CFont font;   

 

  LOGFONT lf;   

 

  memset(&lf,0,sizeof(LOGFONT));   

 

  lf.lfHeight = -14;   

 

  lf.lfWeight = FW_NORMAL;   

 

  lf.lfClipPrecision = CLIP_LH_ANGLES;   

 

  lstrcpy(lf.lfFaceName, _T("宋体"));   

 

  lf.lfEscapement = 900;   

 

  font.CreateFontIndirect(&lf);   

 

  CFont *pOldFont = dc->SelectObject(&font);

 

  //for(int i=0;i<;i++)

 

  dc->TextOut(rc.right/2, rc.bottom/2,str);   

 

  dc->SelectObject(pOldFont);   

 

  font.DeleteObject();

运行时下面效果:不知道是不是这个意思,你的代码是对的呀

 lf.lfEscapement = 900;// 改变这行代码,就可以改变旋转的角度。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式