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);
}

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

相关推荐
清水迎朝阳42 分钟前
客户端软件 — 用户统计方案
服务器·c++·客户端·用户统计
再卷也是菜2 小时前
C++17(下)
c++
alexwang2112 小时前
HDU 4348 详细题解
c++·算法·题解·hdu·主席树·可持久化数据结构·可持久化线段树
程序员zgh2 小时前
C++ 拷贝赋值运算符 详解
c语言·开发语言·c++
皓月斯语4 小时前
B2132 素数对
c++·算法·题解
星轨初途5 小时前
LeetCode 热题 100——day2 字母异位词分组
c++·算法·leetcode
笨鸟先飞的橘猫5 小时前
c++面向对象编程
开发语言·c++
啦啦啦啦啦zzzz6 小时前
设计模式:桥接模式和组合模式
c++·设计模式·组合模式·桥接模式
-森屿安年-6 小时前
647. 回文子串
c++·算法·动态规划
fpcc6 小时前
c++应用网络编程之十七WebSocket
网络·c++·websocket