通往成功之路

C#中的bitmap类的使用方法

2018-03-02  本文已影响11人  此十八

封装 GDI+ 位图,此位图由图形图像及其特性的像素数据组成。Bitmap是用于处理由像素数据定义的图像的对象。

继承层次结构

System.Object

System.MarshalByRefObject

System.Drawing.Image

System.Drawing.Bitmap

命名空间:  System.Drawing

程序集:System.Drawing(在 System.Drawing.dll 中)

C#语法

[SerializableAttribute][ComVisibleAttribute(true)]publicsealedclassBitmap : Image

Bitmap类型公开以下成员。

 名称说明

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。

页首

显式接口实现

 名称说明

ISerializable.GetObjectData使用将目标对象序列化所需的数据填充SerializationInfo。(继承自Image。)

页首

备注

位图由图形图像及其特性的像素数据组成。可使用许多标准格式将位图保存到文件中。GDI+ 支持下列文件格式:BMP、GIF、EXIF、JPG、PNG 和 TIFF。有关支持的格式的更多信息,请参见位图类型

可以使用Bitmap构造函数中的一种来从文件、流和其他源创建图像,然后使用Save方法将这些图像保存到流或文件系统中。使用Graphics对象的DrawImage方法,将图像绘制到屏幕上或内存中。有关使用图像文件的主题的列表,请参见使用图像、位图、图标和图元文件

注意

不能跨应用程序域访问Bitmap类。例如,如果您创建了一个动态AppDomain,并在该域中创建了几个画笔、钢笔和位图,然后将这些对象传递回主应用程序域,则您可以成功使用这些钢笔和画笔。但是,如果您调用DrawImage方法来绘制封送的Bitmap,您会收到以下异常信息。

远程处理无法在类型“System.Drawing.Image”上找到字段“本机映像”。

示例

下面的代码示例演示了如何使用GetPixelSetPixel方法从文件构造新的Bitmap,为图像重新着色。它还使用PixelFormatWidthHeight属性。

此示例旨在用于包含名为Label1的Label、名为PictureBox1的PictureBox和名为Button1的Button的 Windows 窗体。将代码粘贴到该窗体中,并将Button1_Click方法与按钮的Click事件关联。

Bitmap image1;privatevoidButton1_Click(System.Object sender, System.EventArgs e){try{// Retrieve the image.image1 =newBitmap(@"C:\Documents and Settings\All Users\"+@"Documents\My Music\music.bmp",true);intx, y;// Loop through the images pixels to reset color.for(x=0; x

上一篇下一篇

猜你喜欢

热点阅读