第一步: 加载头文件和lib库
#include <gdiplus.h>
#pragma comment(lib, "gdiplus.lib")
using namespace Gdiplus;
第二步:定义全局变量
Gdiplus::GdiplusStartupInput gdiplusStartupInput;
ULONG_PTR gdiplusToken;
第三步:启动
Gdiplus::GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
第四步:关闭
Gdiplus::GdiplusShutdown(gdiplusToken);
第五步: 创建cache二级缓存
// Create off-screen bitmap
Gdiplus::Bitmap* m_pMemBitmap = ::new Bitmap(rcClient.right, rcClient.bottom);
// Create off-screen graphics
Gdiplus::Graphics* m_pMemGraphics = ::Graphics::FromImage(m_pMemBitmap);
// draw to off-screen graphics
m_pMemGraphics->DrawImage(m_pBkImage, 0, 0,rcClient.right, rcClient.bottom);
// Create cashed bitmap
Gdiplus::CachedBitmap* m_pCachedBitmap = ::new CachedBitmap(m_pMemBitmap, pGraphics);
//draw
CPaintDC dc(this); // device context for painting
Graphics graphics(dc.m_hDC);
graphics.DrawCachedBitmap(m_pCachedBitmap, 0, 0);
本文详细介绍了使用GDI+库进行图形处理的基础步骤,包括加载库、定义全局变量、启动和关闭GDI+环境,以及如何创建二级缓存以优化内存使用。通过实例代码演示了如何在应用程序中高效地绘制和缓存图形。
4418

被折叠的 条评论
为什么被折叠?



