c++ GDI+ 描边
时间: 2023-08-03 12:41:25 浏览: 59
要在 C++ 中使用 GDI+ 绘制带描边的文本,可以将 SolidBrush 对象替换为 Pen 对象,并使用 GraphicsPath 类来创建带描边的文本路径。以下是一个简单的示例代码:
```c++
#include <windows.h>
#include <gdiplus.h>
#pragma comment (lib,"Gdiplus.lib")
using namespace Gdiplus;
int main()
{
GdiplusStartupInput gdiplusStartupInput;
ULONG_PTR gdiplusToken;
GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
HDC hdc = GetDC(NULL);
Graphics graphics(hdc);
// 创建带描边的文本路径
GraphicsPath path;
Font font(L"Arial", 16);
path.AddString(L"Hello, World!", -1, &font, PointF(50.0f, 50.0f), NULL);
// 绘制描边文本
Pen pen(Color(255, 0, 0, 255), 2.0f);
graphics.DrawPath(&pen, &path);
ReleaseDC(NULL, hdc);
GdiplusShutdown(gdiplusToken);
return 0;
}
```
这段代码将在屏幕上绘制一个带蓝色描边的 "Hello, World!" 文本。可以通过修改 Pen 对象的属性来更改描边的颜色、宽度等。GraphicsPath 对象可以使用 AddString 方法来创建带描边的文本路径。PointF 对象指定了文本的位置。在绘制时,可以使用 Graphics 对象的 DrawPath 方法来绘制描边文本。