MFC ExtTextOut函数学习

ExtTextOut - 扩展的文本输出;

win32 api的声明如下;

ExtTextOut(

DC: HDC; {设备环境句柄}

X, Y: Integer; {起点坐标}

Options: Longint; {选项}

Rect: PRect; {指定显示范围; 0 表示限制范围}

Str: PChar; {字符串指针}

Count: Longint; {字符串长度}

Dx: PInteger {表示字符间距的数组; 是可选值}

): BOOL;

//Options 参数可选值:

ETO_OPAQUE = 2; {输出前, 用当前背景色填充矩形}

ETO_CLIPPED = 4; {剪切输出, 只输出矩形范围内的文本}

ETO_GLYPH_INDEX = 10;

ETO_RTLREADING = 80;

ETO_NUMERICSLOCAL = 400;

ETO_NUMERICSLATIN = 800;

ETO_IGNORELANGUAGE = 1000;

ETO_PDY = 2000;

VC6新建一个单文档工程;

cpp 复制代码
void CExtView::OnDraw(CDC* pDC)
{
	CExtDoc* pDoc = GetDocument();
	ASSERT_VALID(pDoc);
	// TODO: add draw code for native data here

	CRect rect1(10,10,250,200);
	CString str1 = "Delphi";
	int iArray[] = {10,20,30,40,50};
	int iArray2[] = {10,30,50,70,90};

 	pDC->ExtTextOut(50, 50, ETO_CLIPPED, rect1, str1, 6, iArray);
	pDC->ExtTextOut(50, 80, ETO_CLIPPED, rect1, str1, 6, iArray2);
}

看一下输出一个字符串时,通过一个字符间距数组的控制,实现了字符间距逐步扩大的输出;

相关推荐
曾几何时`36 分钟前
C++——this指针
开发语言·c++
小冯的编程学习之路1 小时前
【C++】: C++基于微服务的即时通讯系统(1)
开发语言·c++·微服务
淀粉肠kk2 小时前
【C++】map和set的使用
c++
纵有疾風起3 小时前
C++—vector:vecor使用及模拟实现
开发语言·c++·经验分享·开源·stl·vector
爱凤的小光7 小时前
图漾GM461-E1相机专栏
c++
qwepoilkjasd7 小时前
C++智能指针介绍
c++
·白小白8 小时前
力扣(LeetCode) ——43.字符串相乘(C++)
c++·leetcode
咬_咬8 小时前
C++仿muduo库高并发服务器项目:Poller模块
服务器·开发语言·c++·epoll·muduo
FMRbpm8 小时前
链表5--------删除
数据结构·c++·算法·链表·新手入门
Kimser9 小时前
QT C++ QWebEngine与Web JS之间通信
javascript·c++·qt