Win32 GDI+ 学习笔记(一)之win32显示图片
1、使用环境:
VS2013 + win7 32位
2、GDI+使用:
1、打开Vs2013,在里面创建一个简单的Win32 程序:(打开Vs2013->"文件(F)"->"新建(N)"->"项目(P)"->"Visual C++"->"Win32”->"Win32 项目"->名称填写"Demo",点击确定->"下一步"- “完成”)
2、在工程里面使用GDI+显示一张图片:
1、在工程添加可以使用下面两种方法添加gdiplus.lib:
第一种是直接在头文件中添加下列语句: #pragma comment( lib, "gdiplus.lib" )
第二种方法是:在工程里面选择"项目->属性"菜单命令,在弹出的对话框中选中左侧的"链接器->输入"选项,在右侧的"附加依赖项"框中键入gdiplus.lib。 2、添加头文件#include <gdiplus.h>,和using namespace Gdiplus; 命名空间,添加ULONG_PTR m_gdiplusToken;作为全局变量声明;3、在主函数开头添加GDI+的初始化语句:
// 初始化GDI+ Gdiplus::GdiplusStartupInput gdiplusStartupInput; Gdiplus::GdiplusStartup(&m_gdiplusToken, &gdiplusStartupInput, NULL);4、在WM_PAINT添加显示图片代码:
case WM_PAINT: { int width, height; hdc = BeginPaint(hWnd, &ps); // TODO: 在此添加任意绘图代码... //加载图像 Image image(L"D://1.png"); if (image.GetLastStatus() != Status::Ok){ MessageBox(hWnd, L"加载图片失败!", L"提示", MB_OK); return -1; } //取得宽度和高度 width = image.GetWidth(); height = image.GetHeight(); //绘图 Graphics graphics(hdc); graphics.DrawImage(&image, 0, 0, width, height); EndPaint(hWnd, &ps); break; }
5、在主函数退出前使用GDI+下面语句释放相关GDI+资源:
Gdiplus::GdiplusShutdown(m_gdiplusToken);6、编译出错,请参考http://www.vcerror.com/?p=2008文章
3、GDI+显示截图:
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。