博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
文字旋转
阅读量:6443 次
发布时间:2019-06-23

本文共 893 字,大约阅读时间需要 2 分钟。

VC中文字旋转实现方式:

1、不使用Graphics,直接用CDC绘制

方法:编辑字体,然后DC选中这个字体,即可实现

具体:

CFont* pFont = pDC->GetCurrentFont();	LOGFONT logFont ;	pFont->GetLogFont(&logFont);		logFont.lfEscapement = 600;//900/10 = 90	wcscpy(logFont.lfFaceName,L"楷体_GB2312");	HFONT hFont = CreateFontIndirect(&logFont); 	pDC->SelectObject(hFont);	pDC->TextOut(200,200,L"VC中如何把一串文字旋转90度显示的?");

这里需要注意的地方:LOGFONT结构中有两个内容需要设置 

lfEscapement 为旋转的角度,以1/10度为单位 lfFaceName   为字体名称,用系统默认的@System字体是不能实现旋转的,这里选择了楷体,宋体也可以

2、使用Graphics类

这个类提供了TranslateTransform、RotateTransform实现坐标系的平移及旋转

下面的代码实现了以(200,200)为原点旋转 30度的操作

graphic.TranslateTransform(200,200);	graphic.RotateTransform(360 - 30);	graphic.DrawString(str, str.GetLength(),		&myFont, PointF(0,0), NULL, &blackBrush);	graphic.RotateTransform(30 - 360);	graphic.TranslateTransform(-200,-200);

记得在绘制结束后把旋转恢复,不然之后的绘制都带着平移跟旋转

 

转载于:https://www.cnblogs.com/luleigreat/archive/2012/08/15/2640274.html

你可能感兴趣的文章
JQUERY 获取span标签id中包含-btnInnerEl的所有项
查看>>
servlet初步认识
查看>>
linux服务器 磁盘和文件系统管理(二) LVM逻辑卷管理的基本操作
查看>>
软raid之详解
查看>>
优先级队列
查看>>
centos6.9安装confluence 6.5.0
查看>>
Python 中的 10 个常见安全漏洞,以及如何避免(上)
查看>>
11.互传文件、用户配置文件和密码配置文件、用户组及用户管理
查看>>
Dubbo源码解析 — 服务引用原理
查看>>
盘点2019年PHP高级开发工程师面试题及答案汇总
查看>>
jenkins自动部署更新AWS ECS服务
查看>>
vscode波浪线去除
查看>>
phalapi-入门篇2(把它玩起来)
查看>>
如何学习技术?(转)
查看>>
OSChina 周日乱弹 ——姐姐妹妹都没有的 我也不想要
查看>>
akka学习
查看>>
权重随机 (choice和sample)
查看>>
预处理和宏
查看>>
App 集成支付宝支付接口(一)沙箱配置
查看>>
svn项目release脚本
查看>>