zoukankan
html css js c++ java
常用的GDI+ 函数使用例子
一、通过Gdi+加载和显示PNG,JPG等格式的图片
//直接加载外部的图像
Image* image = new Image(L"test.png"); //如果需要通过ID 来加载的话
BOOL CSmalltmpdemoDlg::ImageFromIDResource(UINT nID, LPCTSTR sTR, Image * & pImg) { HINSTANCE hInst = AfxGetResourceHandle(); HRSRC hRsrc = ::FindResource (hInst,MAKEINTRESOURCE(nID),sTR); // type if (!hRsrc) return FALSE; // load resource into memory DWORD len = SizeofResource(hInst, hRsrc); BYTE* lpRsrc = (BYTE*)LoadResource(hInst, hRsrc); if (!lpRsrc) return FALSE; // Allocate global memory on which to create stream HGLOBAL m_hMem = GlobalAlloc(GMEM_FIXED, len); BYTE* pmem = (BYTE*)GlobalLock(m_hMem); memcpy(pmem,lpRsrc,len); IStream* pstm; CreateStreamOnHGlobal(m_hMem,FALSE,&pstm); // load from stream pImg=Gdiplus::Image::FromStream(pstm); // free/release stuff GlobalUnlock(m_hMem); pstm->Release(); FreeResource(lpRsrc); return TRUE; }
//调用方式
Image * pImage = NULL; ImageFromIDResource(IDR_PNG_NO_PIC, L"png", pImage); delete pImage; ///////////////////////////////////////////////////////////////////////// Image * pImage = NULL; ImageFromIDResource(IDR_PNG_NO_PIC, L"jpg", pImage); delete pImage; ////////////////////////////////////////////////////////////////////////// Image * pImage = NULL; ImageFromIDResource(IDR_PNG_NO_PIC, L"bitmap", pImage); delete pImage;
二、实现一个渐变的画刷
CClientDC dc(this); CRect rect; //获得当前客户区的大小 GetClientRect(&rect); //创建Graphics对象 Graphics graphics(dc); //创建渐变画刷 LinearGradientBrush lgb(Point(0, 0), Point(rect.right, rect.bottom), Color ::Blue, Color::Green); //填充 graphics.FillRectangle(&lgb, 0, 0, rect.right, rect.bottom);
查看全文
相关阅读:
课堂练习
《你的灯亮着吗》第二篇总结
四则运算2程序
《你的灯亮着吗》第一篇总结
四则运算2
阅读计划
四则运算
《人月神话》读后感
软件演化
软件测试
原文地址:https://www.cnblogs.com/javawebsoa/p/2458419.html
最新文章
Android平台如何获得屏幕尺寸?
Android undefined intent constructor错误?
如何实现滑动加载更多数据?
如何在TableLayout中均匀拉伸columns?
Android assets res 文件夹的区别
Write less code
android .9.png ”点九” 图片制作方法
自己写的分页js分页插件 很low很实用
全面理解Javascript闭包和闭包的几种写法及用途
学习JAVA应该去的20个英文网站(java学习网站)
热门文章
(24):(行为型模式) Visitor 访问者模式
IOC框架(转来的)
iOS9默认加载Https协议的相关设置
iOS学习笔记
正则判断手机号码是否正确
如何在Mac OS X上安装 Ruby运行环境
获取ios通讯录信息
iOS网络-05-AFNetwoking原理及常用操作
Socket原理与编程基础
用 OC 写两个线程,对同一个变量 分别进行+/-操作
Copyright © 2011-2022 走看看