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);
查看全文
相关阅读:
HDU 6187 Destroy Walls
HDU1596 find the safest road
美国机遇号失联已久,NASA想出一奇招,网友看后:这我上我也行!
萨拉飞机或掉入恐怖深渊,那里满是核废料
Problem : 恢复一棵树
Problem : [tju1071]一个简单题
Problem : 马农
人类首个“触日”探测器绕日第二圈
美国三岁男孩森林迷路两天 遇黑熊“热心帮忙”终获救
世上最孤独鸭子去世
原文地址:https://www.cnblogs.com/javawebsoa/p/2458419.html
最新文章
大花栀子球
山茱萸
AT2301 Solitaire
AT2044 Teleporter
AT2161 シャッフル / Shuffling
AT2045 Salvage Robots
AT2582 Mirrored
AT2348 HonestOrUnkind
AT2689 Prime Flip
AT2402 Dam
热门文章
AT2166 Rotate 3x3
AT2672 Coins
HDU 1465 不容易系列之一(排错公式)
HDU 2200 Eddy's AC难题
HDU 4549 M斐波那契数列
Codeforces 450B Jzzhu and Sequences
HDOJ 5019 Revenge of GCD
HDU 2197 本原串
LightOJ 1214 Large Division
BZOJ1050 旅行comf(kruskal)
Copyright © 2011-2022 走看看