绘制字符串
主题 “绘制线条 ”演示如何编写使用 Windows GDI+ 绘制线条的 Windows 应用程序。 若要绘制字符串,请将该主题中显示的 OnPaint 函数替换为以下 OnPaint 函数:
VOID OnPaint(HDC hdc)
{
Graphics graphics(hdc);
SolidBrush brush(Color(255, 0, 0, 255));
FontFamily fontFamily(L"Times New Roman");
Font font(&fontFamily, 24, FontStyleRegular, UnitPixel);
PointF pointF(10.0f, 20.0f);
graphics.DrawString(L"Hello World!", -1, &font, pointF, &brush);
}
前面的代码创建多个 GDI+ 对象。 Graphics 对象提供 DrawString 方法,该方法执行实际绘图。 SolidBrush 对象指定字符串的颜色。
FontFamily 构造函数接收一个标识字体系列的字符串参数。 FontFamily 对象的地址是传递给 Font 构造函数的第一个参数。 传递给 Font 构造函数的第二个参数指定字号,第三个参数指定样式。 值 FontStyleRegular 是在 Gdiplusenums.h 中声明的 FontStyle 枚举的成员。 Font 构造函数的最后一个参数指示在本例中 (24 的字体大小) 以像素为单位。 值 UnitPixel 是 Unit 枚举的成员。
传递给 DrawString 方法的第一个参数是宽字符字符串的地址。 第二个参数 –1 指定字符串以 null 结尾。 (如果字符串未以 null 结尾,则第二个参数应指定 string 中的宽字符数。) 第三个参数是 Font 对象的地址。 第四个参数是对 PointF 对象的引用,该对象指定字符串的绘制位置。 最后一个参数是 Brush 对象的地址,该地址指定字符串的颜色。