CImageMaster轻松显示图片
来源:互联网 发布:淘宝网首页茵曼 编辑:程序博客网 时间:2024/05/30 05:08
原文地址:http://blog.csdn.net/norains/archive/2007/09/09/1777823.aspx
//============================================================
//TITLE:
// CImageMaster轻松显示图片
//AUTHOR:
// norains
//DATE:
// Sunday 26-September-2007
//Environment:
// EVC4.0 + Windows CE 5.0 Standard SDK
//============================================================
虽然IImaging组件可以很简单地显示图片,但如果是更好地显示图片,却又不简单.那有没有什么方法能很简单又能更好地显示图片呢?答案是:有!那就是使用CImageMaster类!
...
... ...
... ... ...
Oh,Forgive me! 原谅我这个自卖自夸的人吧! 原谅我这个无聊的人偶尔发发的牢骚吧!世界多美好! :-)
这篇豆腐块主要是介绍CImageMaster的使用,而代码的主要思想可以参考我另外一篇文章:详聊IImage的图片显示:
http://blog.csdn.net/norains/archive/2007/08/26/1759912.aspx
好吧,老样子,让我们看看该类的函数吧:
1. Open(const TCHAR *pcszFile)
打开一个图片文件.如果打开成功,需要调用Close()函数进行资源的释放.
2. Close()
调用Open()成功后需调用该函数进行资源的释放.
3. IsOK()
判断是否已经准备好绘制图档.
4. GetHeight()
获取图片的高度.
5. GetWidth()
获取图片的宽度.
6.DrawIntegrity(HDC hdc, ImageDrawMode mode,const RECT *pDstRect, const RECT *pSrcRect,BOOL bDraw)
绘制原始图档.如果图片过大,可能会绘制失败.
hdc:目标DC
mode:绘制的模式.
IMG_FIT - 按比例拉伸至整个pDstRect区域.
IMG_STRETCH - 填充整个pDstRect区域,而不管其比例.
IMG_NATIVE - 如果pSrcRect区域小于pDstRect,则按pSrcRect的大小在pDstRect居中显示;如果pSrcRect区域大于pDstRect,则效果和IMG_FIT相同.
pDstRect: 目标DC所绘制的区域.
pSrcRect: 源DC所需要绘制的区域.
bDraw: 为TRUE时立刻绘制到hdc;为FALSE不绘制到hdc上.因为在DrawIntegrity()函数中需要从文件中获取文件信息并创建图片DC来保存图片信息,所以第一调用的时候会比较慢,但以后由于是将图片DC直接绘制到hdc中,所以速度会大大加快.
7.DrawThumbnail(HDC hdc, ImageDrawMode mode, const RECT *pDstRect, const RECT *pSrcRect, BOOL bDraw)
绘制缩略图.如果DrawIntegrity()函数失败,调用该函数绘制缩略图可能会成功.参数的意义和DrawIntegrity()相同.
代码的具体作用和思想请参见:
http://blog.csdn.net/norains/archive/2007/08/26/1759912.aspx
CImageMaster的代码如下:
- CImageMaster轻松显示图片
- CImageMaster轻松显示图片
- CImageMaster轻松显示图片
- CImageMaster轻松显示图片
- 教你轻松显示Gif图片
- Android中轻松显示Gif图片
- Android中轻松显示Gif图片
- Android中轻松显示Gif图片
- 轻松一下,搞笑图片
- 轻松实现旋转显示文本
- struts2标签轻松显示日期
- 轻松实现圆角图片
- 图片显示
- 显示图片
- 图片显示
- 图片显示
- 图片显示
- 图片显示
- C语言实现储存不定类型的链表(二)
- android数据存储ContentProvider数据获取ContentResolver
- Forms Controls and ActiveX Controls in Excel
- 将信号用作 Linux 调试工具
- 自旋锁与信号量
- CImageMaster轻松显示图片
- apache2.2 + tomcat6 整合以及集群配置整理
- 探索ASP.NET中Tailspin TravelUI层奥秘
- J2ME road——J2ME实现RMS手机的存储
- 数学问题 30个点组成多少个三角形
- memcached 安装、启动
- C#动态定义变量
- J2ME road——J2ME实现TextField登录界面
- ubuntu找不到头文件