QQ登录

只需一步,快速开始

上位机MFC文字旋转效果源代码

[ 复制链接 ]

上位机MFC文字旋转效果源代码

上位机MFC文字旋转效果源代码


例程效果如上图。
文字实现任意角度旋转效果。
关键代码是在图形绘制函数ondraw中实现。
代码如下:


  1. void CGradientTxtView::OnDraw(CDC* pDC)
  2. {
  3.         CGradientTxtDoc* pDoc = GetDocument();
  4.         ASSERT_VALID(pDoc);

  5.         //得到客户区的大小
  6.         CRect rcClient;
  7.         GetClientRect (rcClient);
  8.        
  9.         //创建输出字符串.
  10.         CString str (_T ("oooo...I am rotating!"));
  11.        
  12.         //输出透明红色字体
  13.         pDC->SetBkMode (TRANSPARENT);
  14.         pDC->SetTextColor (RGB (255,0,0));
  15.         CFont font;
  16.         LOGFONT stFont; //字体定义结构

  17.         //设置字体格式
  18.         memset(&stFont, 0, sizeof(LOGFONT));
  19.         stFont.lfHeight=MulDiv(14, -pDC->GetDeviceCaps(LOGPIXELSY), 72);
  20.         stFont.lfWeight=FW_NORMAL;
  21.         stFont.lfClipPrecision=CLIP_LH_ANGLES;
  22.         strcpy (stFont.lfFaceName, "Arial");
  23.        
  24.         //每隔15度输出字符串
  25.         for (int nAngle=0; nAngle<3600; nAngle+=150)
  26.         {
  27.                 //设定新的旋转角度
  28.                 stFont.lfEscapement=nAngle;
  29.                
  30.                 //创建字体并选进设备场景
  31.                 font.CreateFontIndirect(&stFont);
  32.                 CFont* pOldFont=pDC ->SelectObject(&font);
  33.                
  34.                 //输出字体
  35.                 pDC->TextOut(rcClient.left + rcClient.Width()/2,rcClient.top + rcClient.Height()/2,str);
  36.                
  37.                 //原来字体
  38.                 pDC->SelectObject(pOldFont);
  39.                 font.DeleteObject();
  40.         }
  41.         // TODO: add draw code for native data here
  42. }
复制代码


可以参考使用上面代码,
也可以下载工程源代码学习。
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:上位机MFC文字旋转效果源代码.rar 
文件大小:24.9 KB  售价:1金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我


  

上位机VC MFC程序开发精典实例大全源码与视频讲解配套下载408例

  

经历1年的编程与录制点击进入查看


  

halcon从自学到接项目视频教程,另外再赠送全网最全资源  

  

欢迎围观我录制的一套halcon自学视频教程(进入)


  

如果您认可,可联系功能定制!

  

如果您着急,充值会员可直接联系发您资料!

  

QQ联系我

微信扫扫联系我

  


回复

使用道具 举报

快速回复 返回列表 客服中心 搜索