GDI+编程

Hi,蜜蜡。

今天写了个GDI+的应用,基本功能就是显示图片的。GDI的话对除了BMP之外的图片格式都不太友善,极度影响用户体验啊。GDI+的话,感觉就比GDI方便多了。

工程地址下载:点击打开链接

运行效果如图:

这里主要用了GDI+来处理图片,GDI+的使用大致流程:

//GDI+
#include <GdiPlus.h>
using namespace Gdiplus;
#pragma comment(lib,"Gdiplus.lib")

//(全局)变量
ULONG_PTR uToken = 0;
GdiplusStartupInput gdiplusStartupInput;

//初始化
GdiplusStartup(&uToken,&gdiplusStartupInput,NULL);

//使用
类Graphics
类Image、pen...

//释放
GdiplusShutdown(uToken);

考虑到移动图片后搽除背景的问题,把图片先画到一个内存graphics中,再输出到目标中。

	CString path;
	GetDlgItemText(IDC_EDIT1,path);
	//CString转WCHAR
	USES_CONVERSION; 
	WCHAR *filePath=T2W((LPCTSTR)path);

	Image img(filePath);
	Bitmap bmp(img.GetWidth(),img.GetHeight());
	Graphics graphics1(GetDlgItem(IDC_GDIPLUS)->GetDC()->m_hDC);  //目标绘图
	Graphics* pgraphics2 = Graphics::FromImage(&bmp);	      //内存绘图
	
	pgraphics2->Clear(Color(255,255,255,255));				//画上底色背景
	pgraphics2->DrawImage(&img,X,Y,img.GetWidth(),img.GetHeight());		//画图片
	graphics1.DrawImage(&bmp,0,0,img.GetWidth(),img.GetHeight());		//拷贝内存绘图

最后,就这样了。虽然很挫,但功能至少是有了,以后在改进吧。gongluck~

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏逸鹏说道

Dapper逆天入门~强类型,动态类型,多映射,多返回值,增删改查+存储过程案例演示

Dapper的牛逼就不扯蛋了,答应群友做个入门Demo的,现有园友需要,那么公开分享一下: 完整Demo:http://pan.baidu.com/s/1i3T...

3267
来自专栏cnblogs

Reactor模式的.net版本简单实现--DEMO

     近期在学习DotNetty,遇到不少的问题。由于dotnetty是次netty的.net版本的实现。导致在网上叙述dotnetty的原理,以及实现技巧...

3616
来自专栏小狼的世界

几个有用的Excel VBA脚本

最近有个朋友要处理很多的Excel数据,但是手工处理又太慢,让我帮忙处理。通过搜索和自己的编写,帮他写了几个脚本,大大提高了工作效率。其实Excel中的脚本(宏...

1072
来自专栏DOTNET

设计模式(行为模式)——观察者模式

1 定义 定义对象间的一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 2 适用性 1)当一个抽象模型有两个方面,其中一...

3176
来自专栏林德熙的博客

WPF 如何在 WriteableBitmap 写文字

最近看到WPF 使用不安全代码快速从数组转 WriteableBitmap 可以快速从数组转 WriteableBitmap 所以就让他画一些元素,但是发现元素...

641
来自专栏林德熙的博客

WPF 判断USB插拔

首先需要在一个窗口重写OnSourceInitialized,在这里可以拿到窗口的指针

771
来自专栏walterlv - 吕毅的博客

.NET 中 GetProcess 相关方法的性能

2018-08-19 07:04

553
来自专栏潇涧技术专栏

Art of Android Development Reading Notes 4

本节和《Android群英传》中的第3章Android控件架构与自定义控件详解有关系,建议先阅读该章的总结

852
来自专栏程序员的SOD蜜

PDF.NET数据开发框架操作MySQL实体类操作实例

在我们最近的项目中,SQL-MAP使用较多,但是实体类用的很少,实际上,“PDF.NET数据开发框架”的实体类相当强大,下面的测试程序是在MySQL中操作的实例...

2079
来自专栏BinarySec

一些pwn题目的解题思路[pwnable.kr] II

目录 以下是solution的目录 #mistake #shellshock #coin1 #blackjack #lotto #cmd1 Other 一些pw...

3385

扫码关注云+社区