Hotcan

享受生活的点点滴滴

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

10 2008 档案

摘要:7. 多帧图像为了赶上英雄第三季的播放日程,我决定一个星期出一集。在第七集Heroes里面,Peter的功能都被他老爸吸收掉了。所以我的这个系列的第七集来讲讲GDI+没完全实现的一部分功能。多帧图像是指在一幅图像中有多个帧,支持多帧图像的格式不多,只有TIFF和GIF。其他格式都不能作为多帧图像存储。其中TIFF可以支持很多页,GIF动画也支持多帧。使用GDI+可以生成多帧TIFF,却没办法实现G... 阅读全文
posted @ 2008-10-31 14:51 Hotcan 阅读(3033) 评论(5) 推荐(0) 编辑

摘要:6.2 GIFGIF的全称是图像交换格式Graphics Interchange Format,是CompuServe公司在1987年创建并使用的。这种格式使用8位索引值来表达一个像素,也就是说1个像素1个byte,最多可以表示256种颜色。它使用LZW无损压缩算法来对图像进行压缩,之后这家公司又和几家其他的公司发明了PNG文件格式,并被更广泛地应用在Web以及其他领域。GIF支持动画,可以保存数... 阅读全文
posted @ 2008-10-29 18:21 Hotcan 阅读(2893) 评论(4) 推荐(0) 编辑

摘要:6.透明,半透明和不透明这是个大题目。在WinForm/WPF里面我们经常会看到一些关于透明的属性,比如Backcolor里面可以选择Transparant, Form里面有一个叫Opacity的属性。都是和透明以及透明度相关的。在其实是在GDI+应用层上的一些东西,在这里我就不讲了。主要从更基本的地方讲起,其中还包括两块完全不同的内容。6.1 Alpha我们在上一讲中提到了PixelFormat... 阅读全文
posted @ 2008-10-29 16:16 Hotcan 阅读(2613) 评论(4) 推荐(0) 编辑

摘要:5.读图是快了,处理怎么还是慢?GDI+的Bitmap类提供了两个罪恶的函数GetPixel, SetPixel,用来获取某个像素点的颜色值。这个2个函数如果只调用一次两次也就罢了,万一我想把整张图片加红一点,用下面的代码,我估计你等到黄花菜都凉了,还没有算完呢。 看看下面的代码是怎么写的。[代码]代码逻辑很清楚,第1到第5行,写得很好,用了我们在前几节里面的方法,读图速度飞快且不锁文件。当然如果... 阅读全文
posted @ 2008-10-23 11:51 Hotcan 阅读(4079) 评论(12) 推荐(1) 编辑

摘要:4. 为啥读个图那么慢?一般来说,读图可以用以下几种方法:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--1publicstaticImageFromFile(stringfilename);2publicstaticImageFromFile(str... 阅读全文
posted @ 2008-10-21 18:05 Hotcan 阅读(3229) 评论(5) 推荐(0) 编辑

摘要:3. System.OutOfMemoryException首先我们还是来看一段代码[代码]前一段我们还是使用了在第2节中介绍的读图像文件的方法,之后我们使用Bitmap.Clone()方法复制一份拷贝。其实这是除了new Bitamp()之外的另一种复制图像的方法。这个方法强大的地方是它可以复制图像的一块区域。不幸的是上面那句话会给你一个System.OutOfMemoryException。这... 阅读全文
posted @ 2008-10-21 14:11 Hotcan 阅读(2744) 评论(2) 推荐(0) 编辑

摘要:今天突然收到一封信,说我那个极度复杂的Marshal的问题被解决了(http://www.cnblogs.com/hotcan/archive/2005/01/12/91007.html)。顿时感觉好久没有在这个blog上写东西了。想当年刚毕业没事情干的时候,还是写得很不亦乐乎的。所以决定炒炒冷饭,写一篇技术文章,以说明我还没有忘记这里。 1.GDI+的前世今生GDI+全称图形设备接口,Graph... 阅读全文
posted @ 2008-10-21 11:58 Hotcan 阅读(7080) 评论(7) 推荐(3) 编辑