活动
位图类型
位图是位数组,用于指定矩形像素数组中每个像素的颜色。 专用于单个像素的位数决定了可分配给该像素的颜色数。 例如,如果每个像素由 4 位表示,则可以为给定像素分配 16 种不同颜色之一(2^4 = 16)。 下表显示了可以分配给像素(由给定位数表示)的颜色数量的几个示例。
每像素位数 | 可分配给像素的颜色数 |
---|---|
1 | 2^1 = 2 |
2 | 2^2 = 4 |
4 | 2^4 = 16 |
8 | 2^8 = 256 |
16 | 2^16 = 65,536 |
24 | 2^24 = 16,777,216 |
存储位图的磁盘文件通常包含一个或多个信息块,用于存储每个像素的位数、每行中的像素数和数组中的行数。 此类文件还可能包含颜色表(有时称为调色板)。 颜色表将位图中的数字映射到特定颜色。 下图显示了放大的图像及其位图和颜色表。 每个像素由 4 位数字表示,因此颜色表中有 2^4 = 16 种颜色。 表中的每一种颜色都以 24 位数字表示:8 位表示红色,8 位表示绿色,8 位表示蓝色。 数字以十六进制(base 16)形式显示:A = 10,B = 11,C = 12,D = 13,E = 14,F = 15。
查看图像第 3 行第 5 列中的像素。 位图中的相应数字为 1。 颜色表告诉我们,1 表示红色,以便像素为红色。 位图顶部行中的所有条目均为 3。 颜色表告诉我们 3 表示蓝色,因此图像顶部行中的所有像素均为蓝色。
备注
某些位图以自下而上格式存储;位图第一行中的数字对应于图像底部行中的像素。
将索引存储到颜色表中的位图称为调色板索引位图。 某些位图不需要颜色表。 例如,如果位图每像素使用 24 位,则该位图可以存储颜色本身,而不是将索引存储到颜色表中。 下图显示了一个位图,该位图直接存储颜色(每个像素 24 位),而不是使用颜色表。 此图还显示了相应图像的放大视图。 在位图中,FFFFFF 表示白色,FF0000 表示红色,00FF00 表示绿色,0000FF 表示蓝色。
在磁盘文件中保存位图有许多标准格式。 GDI+ 支持以下段落中所述的图形文件格式。
BMP 是 Windows 用于存储与设备无关和应用程序无关映像的标准格式。 给定 BMP 文件的每个像素(1、4、8、15、24、32 或 64)的位数在文件头中指定。 每个像素 24 位的 BMP 文件很常见。 BMP 文件通常未压缩,因此不适合通过 Internet 传输。
GIF 是网页中显示的图像的常见格式。 GIF 适用于线条图、具有纯色块的图片,以及颜色之间具有锐利边界的图片。 GIF 已压缩,但压缩过程中不会丢失任何信息;解压缩的图像与原始图像完全相同。 GIF 中的一种颜色可以指定为透明,以便图像具有显示该图像的任何网页的背景色。 GIF 图像序列可以存储在单个文件中,以形成动画 GIF。 GIF 存储每个像素最多 8 位,因此它们限制为 256 种颜色。
JPEG 是一种适用于自然场景(如扫描照片)的压缩方案。 一些信息在压缩过程中丢失,但通常损失对人眼是无法察觉的。 JPEG 存储每个像素 24 位,因此它们能够显示超过 1600 万种颜色。 JPEG 不支持透明度或动画。
JPEG 图像中的压缩级别是可配置的,但更高的压缩级别(较小的文件)会导致更多的信息丢失。 20:1 压缩比通常产生人眼难以区分原始图像的图像。 下图显示了一个 BMP 图像和两个从该 BMP 映像压缩的 JPEG 映像。 第一个 JPEG 的压缩比率为 4:1,第二个 JPEG 的压缩比约为 8:1。
JPEG 压缩不适用于线条图、纯色块和锐利边界。 下图显示了 BMP 以及两个 JPEG 和一个 GIF。 JPEG 和 GIF 是从 BMP 压缩的。 对于 GIF,压缩比率为 4:1;对于较小的 JPEG,压缩比率为 4:1;对于较大的 JPEG,压缩比率为 8:3。 请注意,GIF 保持线条的清晰边界,而 JPEG 往往会模糊边界。
JPEG 是压缩方案,而不是文件格式。 JPEG 文件交换格式(JFIF)是一种文件格式,通常用于存储和传输已根据 JPEG 方案压缩的图像。 Web 浏览器显示的 JFIF 文件使用 .jpg 扩展名。
EXIF 是用于由数字相机捕获的照片的文件格式。 EXIF 文件包含根据 JPEG 规范压缩的图像。 EXIF 文件还包含有关照片的信息(拍摄日期、快门速度、曝光时间等)以及有关相机的信息(制造商、型号等)。
PNG 格式保留了 GIF 格式的许多优势,但也提供了超出 GIF 格式的功能。 与 GIF 文件一样,PNG 文件会压缩,不会丢失信息。 PNG 文件可以存储每像素 8 位、24 位或 48 位的颜色,以及每个像素 1、2、4、8 或 16 位的灰度。 相比之下,GIF 文件每个像素只能使用 1、2、4 或 8 位。 PNG 文件还可以为每个像素存储 alpha 值,该值指定该像素的颜色与背景色混合的程度。
PNG 在逐步显示图像方面比 GIF 更有优势(也就是说,可以在图像通过网络连接传输时,不断逼近最终的图像效果)。 PNG 文件可以包含伽玛更正和颜色更正信息,以便图像可以在各种显示设备上准确呈现。
TIFF 是各种平台和图像处理应用程序支持的灵活且可扩展的格式。 TIFF 文件可以存储每个像素的任意位数的图像,并且可以使用各种压缩算法。 多个图像可以存储在单个多页 TIFF 文件中。 与图像相关的信息(扫描程序制作、主计算机、压缩类型、方向、每个像素的样本等)可以存储在文件中,并通过标记进行排列。 批准和添加新标记后,可以根据需要扩展 TIFF 格式。