封装 GDI+ 位图,此位图由图形图像及其特性的像素数据组成。 Bitmap 是用于处理由像素数据定义的图像的对象。
程序集: System.Drawing(在 System.Drawing.dll 中)
C#语法
[SerializableAttribute] [ComVisibleAttribute(true)] public sealed class Bitmap : ImageBitmap 类型公开以下成员。
名称 | 说明 | |
---|---|---|
![]() | Bitmap(Image) | 从指定的现有图像初始化 Bitmap 类的新实例。 |
![]() | Bitmap(Stream) | 从指定的数据流初始化 Bitmap 类的新实例。 |
![]() | Bitmap(String) | 从指定的文件初始化 Bitmap 类的新实例。 |
![]() | Bitmap(Image, Size) | 从指定的现有图像(缩放到指定大小)初始化 Bitmap 类的新实例。 |
![]() | Bitmap(Int32, Int32) | 用指定的大小初始化 Bitmap 类的新实例。 |
![]() | Bitmap(Stream, Boolean) | 从指定的数据流初始化 Bitmap 类的新实例。 |
![]() | Bitmap(String, Boolean) | 从指定的文件初始化 Bitmap 类的新实例。 |
![]() | Bitmap(Type, String) | 从指定的资源初始化 Bitmap 类的新实例。 |
![]() | Bitmap(Image, Int32, Int32) | 从指定的现有图像(缩放到指定大小)初始化 Bitmap 类的新实例。 |
![]() | Bitmap(Int32, Int32, Graphics) | 用指定的大小和指定的 Graphics 对象的分辨率初始化 Bitmap 类的新实例。 |
![]() | Bitmap(Int32, Int32, PixelFormat) | 用指定的大小和格式初始化 Bitmap 类的新实例。 |
![]() | Bitmap(Int32, Int32, Int32, PixelFormat, IntPtr) | 用指定的大小、像素格式和像素数据初始化 Bitmap 类的新实例。 |
名称 | 说明 | |
---|---|---|
![]() | Flags | 获取该 Image 的像素数据的特性标志。 (继承自 Image。) |
![]() | FrameDimensionsList | 获取 GUID 的数组,这些 GUID 表示此 Image 中帧的维数。 (继承自 Image。) |
![]() | Height | 获取此 Image 的高度(以像素为单位)。 (继承自 Image。) |
![]() | HorizontalResolution | 获取此 Image 的水平分辨率(以“像素/英寸”为单位)。 (继承自 Image。) |
![]() | Palette | 获取或设置用于此 Image 的调色板。 (继承自 Image。) |
![]() | PhysicalDimension | 获取此图像的宽度和高度。 (继承自 Image。) |
![]() | PixelFormat | 获取此 Image 的像素格式。 (继承自 Image。) |
![]() | PropertyIdList | 获取存储于该 Image 中的属性项的 ID。 (继承自 Image。) |
![]() | PropertyItems | 获取存储于该 Image 中的所有属性项(元数据片)。 (继承自 Image。) |
![]() | RawFormat | 获取此 Image 的文件格式。 (继承自 Image。) |
![]() | Size | 获取此图像的以像素为单位的宽度和高度。 (继承自 Image。) |
![]() | Tag | 获取或设置提供有关图像附加数据的对象。 (继承自 Image。) |
![]() | VerticalResolution | 获取此 Image 的垂直分辨率(以“像素/英寸”为单位)。 (继承自 Image。) |
![]() | Width | 获取此 Image 的宽度(以像素为单位)。 (继承自 Image。) |
名称 | 说明 | |
---|---|---|
![]() | Clone() | 创建此 Image 的一个精确副本。 (继承自 Image。) |
![]() | Clone(Rectangle, PixelFormat) | 创建此 Bitmap(它由 Rectangle 结构并使用指定的 PixelFormat 枚举定义)的某个部分的副本。 |
![]() | Clone(RectangleF, PixelFormat) | 创建此 Bitmap(用指定的 PixelFormat 枚举定义)的某个部分的副本。 |
![]() | CreateObjRef | 创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息。 (继承自MarshalByRefObject。) |
![]() | Dispose() | 释放由此 Image 占用的所有资源。 (继承自 Image。) |
![]() | Dispose(Boolean) | 释放由 Image 占用的非托管资源,还可以另外再释放托管资源。 (继承自 Image。) |
![]() | Equals(Object) | 确定指定的 Object 是否等于当前的 Object。 (继承自 Object。) |
![]() | Finalize | 允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Image。) |
![]() ![]() | FromHicon | 从图标的 Windows 句柄创建 Bitmap。 |
![]() ![]() | FromResource | 从指定的 Windows 资源创建 Bitmap。 |
![]() | GetBounds | 以指定的单位获取图像的界限。 (继承自 Image。) |
![]() | GetEncoderParameterList | 返回有关指定的图像编码器所支持的参数的信息。 (继承自 Image。) |
![]() | GetFrameCount | 返回指定维度的帧数。 (继承自 Image。) |
![]() | GetHashCode | 用作特定类型的哈希函数。 (继承自 Object。) |
![]() | GetHbitmap() | 从此 Bitmap 创建 GDI 位图对象。 |
![]() | GetHbitmap(Color) | 从此 Bitmap 创建 GDI 位图对象。 |
![]() | GetHicon | 返回图标的句柄。 |
![]() | GetLifetimeService | 检索控制此实例的生存期策略的当前生存期服务对象。 (继承自 MarshalByRefObject。) |
![]() | GetPixel | 获取此 Bitmap 中指定像素的颜色。 |
![]() | GetPropertyItem | 从该 Image 获取指定的属性项。 (继承自 Image。) |
![]() | GetThumbnailImage | 返回此 Image 的缩略图。 (继承自 Image。) |
![]() | GetType | 获取当前实例的 Type。 (继承自 Object。) |
![]() | InitializeLifetimeService | 获取控制此实例的生存期策略的生存期服务对象。 (继承自 MarshalByRefObject。) |
![]() | LockBits(Rectangle, ImageLockMode, PixelFormat) | 将 Bitmap 锁定到系统内存中。 |
![]() | LockBits(Rectangle, ImageLockMode, PixelFormat, BitmapData) | 将 Bitmap 锁定到系统内存中 |
![]() | MakeTransparent() | 使默认的透明颜色对此 Bitmap 透明。 |
![]() | MakeTransparent(Color) | 使指定的颜色对此 Bitmap 透明。 |
![]() | MemberwiseClone() | 创建当前 Object 的浅表副本。 (继承自 Object。) |
![]() | MemberwiseClone(Boolean) | 创建当前 MarshalByRefObject 对象的浅表副本。 (继承自 MarshalByRefObject。) |
![]() | RemovePropertyItem | 从该 Image 移除指定的属性项。 (继承自 Image。) |
![]() | RotateFlip | 旋转、翻转或者同时旋转和翻转 Image。 (继承自 Image。) |
![]() | Save(String) | 将该 Image 保存到指定的文件或流。 (继承自 Image。) |
![]() | Save(Stream, ImageFormat) | 将此图像以指定的格式保存到指定的流中。 (继承自 Image。) |
![]() | Save(String, ImageFormat) | 将此 Image 以指定格式保存到指定文件。 (继承自 Image。) |
![]() | Save(Stream, ImageCodecInfo, EncoderParameters) | 使用指定的编码器和图像编码器参数,将该图像保存到指定的流。 (继承自 Image。) |
![]() | Save(String, ImageCodecInfo, EncoderParameters) | 使用指定的编码器和图像编码器参数,将该 Image 保存到指定的文件。 (继承自 Image。) |
![]() | SaveAdd(EncoderParameters) | 在上一 Save 方法调用所指定的文件或流内添加一帧。 使用此方法将多帧图像中的选定帧保存到另一个多帧图像。 (继承自 Image。) |
![]() | SaveAdd(Image, EncoderParameters) | 在上一 Save 方法调用所指定的文件或流内添加一帧。 (继承自 Image。) |
![]() | SelectActiveFrame | 选择由维度和索引指定的帧。 (继承自 Image。) |
![]() | SetPixel | 获取此 Bitmap 中指定像素的颜色。 |
![]() | SetPropertyItem | 在此 Image 中存储一个属性项(元数据片)。 (继承自 Image。) |
![]() | SetResolution | 设置此 Bitmap 的分辨率。 |
![]() | ToString | 返回表示当前对象的字符串。 (继承自 Object。) |
![]() | UnlockBits | 从系统内存解锁此 Bitmap。 |
下面的代码示例演示了如何使用 GetPixel 和 SetPixel 方法从文件构造新的 Bitmap,为图像重新着色。 它还使用 PixelFormat、Width 和 Height 属性。
此示例旨在用于包含名为 Label1 的 Label、名为 PictureBox1 的 PictureBox 和名为 Button1 的 Button 的 Windows 窗体。 将代码粘贴到该窗体中,并将 Button1_Click 方法与按钮的 Click 事件关联。
Bitmap image1; private void Button1_Click(System.Object sender, System.EventArgs e) { try { // Retrieve the image. image1 = new Bitmap(@"C:\Documents and Settings\All Users\" + @"Documents\My Music\music.bmp", true); int x, y; // Loop through the images pixels to reset color. for(x=0; x<image1.Width; x++) { for(y=0; y<image1.Height; y++) { Color pixelColor = image1.GetPixel(x, y); Color newColor = Color.FromArgb(pixelColor.R, 0, 0); image1.SetPixel(x, y, newColor); } } // Set the PictureBox to display the image. PictureBox1.Image = image1; // Display the pixel format in Label1. Label1.Text = "Pixel format: "+image1.PixelFormat.ToString(); } catch(ArgumentException) { MessageBox.Show("There was an error." + "Check the path to the image file."); } }