位图和Bitblt-em78p153 c语言范例

时间:2021-06-02 17:54:19
【文件属性】:
文件名称:位图和Bitblt-em78p153 c语言范例
文件大小:5.55MB
文件格式:PDF
更新时间:2021-06-02 17:54:19
Windows 第十四章 位图和Bitblt 位图是一个二维的位数组,它与图像的像素一一对应。当现实世界的图像被扫描成位图以后, 图像被分割成网格,并以像素作为取样单位。在位图中的每个像素值指明了一个单位网格内图像的 平均颜色。单色位图每个像素只需要一位,灰色或彩色位图中每个像素需要多个位。 位图代表了Windows程序内储存图像信息的两种方法之一。储存图像信息的另一种形式是 metafile,我将在第十八章讨论。Metafile储存的就是对图像如何生成的描述,而不是将图像以数 字化的图标代表。 以后我将更详细地讨论,Microsoft Windows 3.0定义了一种称为设备无关位图(DIB: device-independent bitmap)。我将在下一章讨论DIB。本章主要讨论GDI位图对象,这是一种 在Windows中比DIB更早支持的位图形数据。如同本章大量的范例程序所说明的,这种比DIB位图 更早被Windows支持的图形格式仍然有其利用价值。 位图入门 位图和metafile在计算机图形处理世界中都占有一席之地。位图经常用来表示来自真实世界的 复杂图像,例如数字化的照片或者视讯图像。Metafile更适合于描述由人或者机器产生的图像,比 如建筑蓝图。位图和metafile都能存于内存或作为文件存于磁盘上,并且都能通过剪贴簿在 Windows应用程序之间传输。 位图和metafile的区别在于位映像图像和向量图像之间的差别。位映像图像用离散的像素来处 理输出设备;而向量图像用笛卡尔坐标系统来处理输出设备,其线条和填充对象能被个别拖移。现 在大多数的图像输出设备是位映像设备,这包括视讯显示、点阵打印机、激光打印机和喷墨打印机。 而笔式绘图机则是向量输出设备。 位图有两个主要的缺点。第一个问题是容易受设备依赖性的影响。最明显的就是对颜色的依赖 性,在单色设备上显示彩色位图的效果总是不能令人满意的。另一个问题是位图经常暗示了特定的 显示分辨率和图像纵横比。尽管位图能被拉伸和缩小,但是这样的处理通常包括复制或删除像素的 某些行和列,这样会破坏图像的大小。而metafile在放大缩小后仍然能保持图形样貌不受破坏。 位图的第二个缺点是需要很大的储存空间。例如,描述完整的640×480像素,16色的视频图 形数组(VGA:Video Graphics Array)屏幕的一幅位图需要大于150 KB的空间;一幅1024×768, 并且每个像素为24位颜色的图像则需要大于2 MB的空间。Metafile需要通常比位图来得少的空间。 位图的储存空间由图像的大小及其包含的颜色决定,而metafile的储存空间则由图像的复杂程度和 它所包含的GDI指令数决定。 然而,位图优于metafile之处在于速度。将位图复制给视讯显示器通常比复制基本图形文件的 速度要快。最近几年,压缩技术允许压缩位图的文件大小,以使它能有效地通过电话线传输并广泛 地用于Internet的网页上。 位图的来源 位图可以手工建立,例如,使用Windows 98附带的「小画家」程序。一些人宁愿使用位映像 绘图软件也不使用向量绘图软件。他们假定:图形最后一定会复杂到不能用线条跟填充区域来表达。 位图图像也能由计算机程序计算生成。尽管大多数计算生成的图像能按向量图形metafile储

网友评论