Bitmap类文档
Bitmap 類
.NET Framework 4.5 其他版本?
封裝 GDI+ 位圖,此位圖由圖形圖像及其特性的像素數據組成。?Bitmap?是用于處理由像素數據定義的圖像的對象。
繼承層次結構System::Object?
??System::MarshalByRefObject
????System.Drawing::Image
??????System.Drawing::Bitmap
?
命名空間:??System.Drawing程序集:??System.Drawing(在 System.Drawing.dll 中) 語法
C# C++ F# VB [SerializableAttribute] [ComVisibleAttribute(true)] public ref class Bitmap sealed : public 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。) | |
| Equals(Object) | 確定指定的對象是否等于當前對象。?(繼承自?Object。) | |
| 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?透明。 | |
| 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”上找到字段“本機映像”。 |
下面的代碼示例演示了如何使用?GetPixel?和?SetPixel?方法從文件構造新的?Bitmap,為圖像重新著色。它還使用?PixelFormat、Width?和?Height?屬性。
此示例旨在用于包含名為?Label1?的?Label、名為?PictureBox1?的?PictureBox?和名為?Button1?的?Button?的 Windows 窗體。將代碼粘貼到該窗體中,并將Button1_Click?方法與按鈕的?Click?事件關聯。
C# C++ VB private:Bitmap^ image1;void Button1_Click( System::Object^ /*sender*/, System::EventArgs^ /*e*/ ){try{// Retrieve the image.image1 = gcnew Bitmap( "C:\\Documents and Settings\\All Users\\""Documents\\My Music\\music.bmp",true );int x;int 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 = String::Format( "Pixel format: {0}", image1->PixelFormat );}catch ( ArgumentException^ ) {MessageBox::Show( "There was an error.""Check the path to the image file." );}} 版本信息.NET Framework
受以下版本支持:4.5、4、3.5、3.0、2.0、1.1、1.0.NET Framework Client Profile
受以下版本支持:4、3.5 SP1 平臺Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008(不支持服務器核心角色), Windows Server 2008 R2(支持帶 SP1 或更高版本的服務器核心角色;不支持 Itanium)
?
?
.NET Framework 并不是對每個平臺的所有版本都提供支持。有關支持的版本的列表,請參見.NET Framework 系統要求。 線程安全此類型的任何公共?static(在 Visual Basic 中為?Shared) 成員都是線程安全的。但不保證所有實例成員都是線程安全的。
轉載于:https://www.cnblogs.com/songtzu/archive/2013/01/03/2843441.html
總結
- 上一篇: [leetcode]Divide Two
- 下一篇: Struts2升级注意事项