Bitmap Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Beágyaz egy GDI+ bitképet, amely egy grafikus kép képpontadataiból és attribútumaiból áll. Az A Bitmap egy objektum, amely képpontadatok által definiált képekkel dolgozik.
public ref class Bitmap sealed : System::Drawing::Image
[System.Serializable]
public sealed class Bitmap : System.Drawing.Image
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class Bitmap : System.Drawing.Image
public sealed class Bitmap : System.Drawing.Image
[<System.Serializable>]
type Bitmap = class
inherit Image
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Bitmap = class
inherit Image
type Bitmap = class
inherit Image
Public NotInheritable Class Bitmap
Inherits Image
- Öröklődés
- Attribútumok
Példák
Az alábbi példakód bemutatja, hogyan hozhat létre újat Bitmap egy fájlból a GetPixel kép újraszínezésére szolgáló módszerekkel.SetPixel Emellett a , PixelFormatés Width a Heighttulajdonságokat is használja.
Ez a példa olyan Windows Forms használható, amely egy Label, PictureBox és Button nevű Label1, PictureBox1 és Button1 nevet tartalmazza. Illessze be a kódot az űrlapba, és társítsa a Button1_Click metódust a gomb eseményéhez Click .
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." );
}
}
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.");
}
}
Dim image1 As Bitmap
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
Try
' Retrieve the image.
image1 = New Bitmap( _
"C:\Documents and Settings\All Users\Documents\My Music\music.bmp", _
True)
Dim x, y As Integer
' Loop through the images pixels to reset color.
For x = 0 To image1.Width - 1
For y = 0 To image1.Height - 1
Dim pixelColor As Color = image1.GetPixel(x, y)
Dim newColor As Color = _
Color.FromArgb(pixelColor.R, 0, 0)
image1.SetPixel(x, y, newColor)
Next
Next
' Set the PictureBox to display the image.
PictureBox1.Image = image1
' Display the pixel format in Label1.
Label1.Text = "Pixel format: " + image1.PixelFormat.ToString()
Catch ex As ArgumentException
MessageBox.Show("There was an error." _
& "Check the path to the image file.")
End Try
End Sub
Megjegyzések
A bitképek a grafikus képek képpontadataiból és attribútumaiból állnak. A bitkép fájlba mentéséhez számos szabványos formátum létezik. A GDI+ a következő fájlformátumokat támogatja: BMP, GIF, EXIF, JPG, PNG és TIFF. A támogatott formátumokról további információt a Bitképek típusai című témakörben talál.
Az egyik Bitmap konstruktor használatával képeket hozhat létre fájlokból, streamekből és más forrásokból, és mentheti őket egy streambe vagy a fájlrendszerbe a Save módszerrel. A rendszer az objektum metódusával rajzolja a képeket a képernyőre vagy a DrawImage memóriába Graphics . A képfájlok használatáról szóló témakörök listáját a Képek, Bitképek, Ikonok és Metafájlok használata című témakörben találja.
Note
A .NET 6-os és újabb verzióiban az ilyen típusú System.Drawing.Common csomag csak Windows operációs rendszereken támogatott. Az ilyen típusú alkalmazások platformfüggetlen használata fordítási időt jelző figyelmeztetéseket és futásidejű kivételeket okoz. További információ: System.Drawing.Common csak Windows rendszeren támogatott.
Note
Az Bitmap osztály nem érhető el az alkalmazástartományokban. Ha például dinamikus AppDomain elemet hoz létre, és több kefét, tollat és bitképet hoz létre a tartományban, majd átadja ezeket az objektumokat a fő alkalmazástartománynak, sikeresen használhatja a tollakat és az ecseteket. Ha azonban meghívja a metódust a DrawImage marsall Bitmapmegrajzolására, a következő kivételt kapja:
Az újraírás nem találja a "System.Drawing.Image" típusú "natív kép" mezőt.
Konstruktorok
| Name | Description |
|---|---|
| Bitmap(Image, Int32, Int32) |
Inicializálja az osztály új példányát a Bitmap megadott meglévő lemezképből, a megadott méretre skálázva. |
| Bitmap(Image, Size) |
Inicializálja az osztály új példányát a Bitmap megadott meglévő lemezképből, a megadott méretre skálázva. |
| Bitmap(Image) |
Inicializálja az Bitmap osztály új példányát a megadott meglévő lemezképből. |
| Bitmap(Int32, Int32, Graphics) |
Inicializálja az Bitmap osztály új példányát a megadott mérettel és a megadott Graphics objektum felbontásával. |
| Bitmap(Int32, Int32, Int32, PixelFormat, IntPtr) |
Inicializálja az Bitmap osztály új példányát a megadott mérettel, képpontformátummal és képpontadatokkal. |
| Bitmap(Int32, Int32, PixelFormat) |
Inicializálja az Bitmap osztály új példányát a megadott mérettel és formátummal. |
| Bitmap(Int32, Int32) |
Inicializálja az osztály új példányát Bitmap a megadott mérettel. |
| Bitmap(Stream, Boolean) |
Inicializálja az Bitmap osztály új példányát a megadott adatfolyamból. |
| Bitmap(Stream) |
Inicializálja az Bitmap osztály új példányát a megadott adatfolyamból. |
| Bitmap(String, Boolean) |
Inicializálja az Bitmap osztály új példányát a megadott fájlból. |
| Bitmap(String) |
Inicializálja az Bitmap osztály új példányát a megadott fájlból. |
| Bitmap(Type, String) |
Inicializálja az Bitmap osztály új példányát egy megadott erőforrásból. |
Tulajdonságok
| Name | Description |
|---|---|
| Flags |
Lekéri a képpontadatok attribútumjelölőit.Image (Öröklődés forrása Image) |
| FrameDimensionsList |
Lekéri a képkockák dimenzióit ábrázoló grafikus GUID-tömböt.Image (Öröklődés forrása Image) |
| Height |
Ennek a magasságát képpontban Imageadja meg. (Öröklődés forrása Image) |
| HorizontalResolution |
Lekéri ennek a képpont/hüvelyk vízszintes felbontását Image. (Öröklődés forrása Image) |
| Palette |
Lekéri vagy beállítja az ehhez Imagehasznált színpalettát. (Öröklődés forrása Image) |
| PhysicalDimension |
Lekéri a kép szélességét és magasságát. (Öröklődés forrása Image) |
| PixelFormat |
Lekéri ennek a képpontformátumnak a formátumát Image. (Öröklődés forrása Image) |
| PropertyIdList |
Lekéri az ebben Imagea szakaszban tárolt tulajdonságelemek azonosítóit. (Öröklődés forrása Image) |
| PropertyItems |
Lekéri az ebben Imagea fájlban tárolt összes tulajdonságelemet (metaadat-elemet). (Öröklődés forrása Image) |
| RawFormat |
Lekéri ennek a fájlformátumnak a Imageformátumát. (Öröklődés forrása Image) |
| Size |
Lekéri a kép szélességét és magasságát képpontban. (Öröklődés forrása Image) |
| Tag |
Lekéri vagy beállít egy objektumot, amely további adatokat biztosít a képről. (Öröklődés forrása Image) |
| VerticalResolution |
Lekéri ennek a képpont/hüvelyk függőleges felbontását Image. (Öröklődés forrása Image) |
| Width |
Lekéri ennek a szélességét Imageképpontban. (Öröklődés forrása Image) |
Metódusok
| Name | Description |
|---|---|
| ApplyEffect(Effect, Rectangle) |
Módosítja a bitképet a megadott |
| Clone() |
Ennek a példánynak a pontos másolatát Imagehozza létre. (Öröklődés forrása Image) |
| Clone(Rectangle, PixelFormat) |
Létrehozza ennek a szakasznak Bitmap a másolatát, amelyet a struktúra és egy megadott Rectangle enumerálás határoz PixelFormat meg. |
| Clone(RectangleF, PixelFormat) |
Létrehoz egy példányt ennek a szakasznak Bitmap a megadott PixelFormat számbavétellel történő definiálásához. |
| ConvertFormat(PixelFormat, DitherType, PaletteType, ColorPalette, Single) |
A bitképet a megadottra |
| ConvertFormat(PixelFormat) |
A bitképet a megadottra |
| CreateObjRef(Type) |
Létrehoz egy objektumot, amely tartalmazza a távoli objektumokkal való kommunikációhoz használt proxy létrehozásához szükséges összes releváns információt. (Öröklődés forrása MarshalByRefObject) |
| Dispose() |
Felszabadítja a jelen témakör által használt összes erőforrást Image. (Öröklődés forrása Image) |
| Dispose(Boolean) |
Felszabadítja a felügyelt erőforrások által Image használt nem felügyelt erőforrásokat, és opcionálisan felszabadítja a felügyelt erőforrásokat. (Öröklődés forrása Image) |
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| FromHicon(IntPtr) |
Létrehoz egy Bitmap egy Windows fogópontról egy ikonra. |
| FromResource(IntPtr, String) |
Létrehoz egy Bitmap a megadott Windows erőforrásból. |
| GetBounds(GraphicsUnit) |
Lekéri a kép határait a megadott egységben. (Öröklődés forrása Image) |
| GetEncoderParameterList(Guid) |
A megadott képkódoló által támogatott paraméterekkel kapcsolatos információkat adja vissza. (Öröklődés forrása Image) |
| GetFrameCount(FrameDimension) |
A megadott dimenzió kereteinek számát adja vissza. (Öröklődés forrása Image) |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetHbitmap() |
Ebből létrehoz egy GDI-bitképobjektumot Bitmap. |
| GetHbitmap(Color) |
Ebből létrehoz egy GDI-bitképobjektumot Bitmap. |
| GetHicon() |
A fogópontot egy ikonra adja vissza. |
| GetLifetimeService() |
Elavult.
Lekéri a példány élettartamszabályzatát vezérlő aktuális élettartam-szolgáltatásobjektumot. (Öröklődés forrása MarshalByRefObject) |
| GetPixel(Int32, Int32) |
A megadott képpont színét adja meg ebben a Bitmapnézetben. |
| GetPropertyItem(Int32) |
A megadott tulajdonságelemet ebből a tulajdonságból szerzi be Image. (Öröklődés forrása Image) |
| GetThumbnailImage(Int32, Int32, Image+GetThumbnailImageAbort, IntPtr) |
Ehhez a miniatűrhöz ad vissza miniatűrt Image. (Öröklődés forrása Image) |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| InitializeLifetimeService() |
Elavult.
Beolvas egy élettartam-szolgáltatásobjektumot a példány élettartam-szabályzatának szabályozásához. (Öröklődés forrása MarshalByRefObject) |
| LockBits(Rectangle, ImageLockMode, PixelFormat, BitmapData) |
Zárol egy Bitmap rendszermemóriát. |
| LockBits(Rectangle, ImageLockMode, PixelFormat) |
Zárol egy Bitmap rendszermemóriát. |
| MakeTransparent() |
Áttetszővé teszi az alapértelmezett áttetsző színt ehhez Bitmapa színhez. |
| MakeTransparent(Color) |
Áttetszővé teszi a megadott színt ehhez Bitmapa színhez. |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| MemberwiseClone(Boolean) |
Az aktuális MarshalByRefObject objektum sekély másolatát hozza létre. (Öröklődés forrása MarshalByRefObject) |
| RemovePropertyItem(Int32) |
Eltávolítja a megadott tulajdonságelemet ebből a Imagetulajdonságból. (Öröklődés forrása Image) |
| RotateFlip(RotateFlipType) |
Elforgatja, tükrözi vagy elforgatja a elemet, és megfordítja a Imageelemet. (Öröklődés forrása Image) |
| Save(Stream, ImageCodecInfo, EncoderParameters) |
A rendszerképet a megadott streambe menti a megadott kódoló és képkódoló paraméterekkel. (Öröklődés forrása Image) |
| Save(Stream, ImageFormat) |
A rendszerképet a megadott formátumban menti a megadott streambe. (Öröklődés forrása Image) |
| Save(String, ImageCodecInfo, EncoderParameters) |
Ezt Image a megadott fájlba menti a megadott kódoló és képkódoló paraméterekkel. (Öröklődés forrása Image) |
| Save(String, ImageFormat) |
Ezt Image a fájlt a megadott formátumban menti a megadott fájlba. (Öröklődés forrása Image) |
| Save(String) |
Ezt Image menti a megadott fájlba vagy streambe. (Öröklődés forrása Image) |
| SaveAdd(EncoderParameters) |
Keret hozzáadása a metódushoz egy korábbi hívásban megadott fájlhoz vagy streamhez Save . Ezzel a módszerrel mentheti a kijelölt kereteket egy több képkockás rendszerképből egy másik több képkockás képbe. (Öröklődés forrása Image) |
| SaveAdd(Image, EncoderParameters) |
Keret hozzáadása a metódushoz egy korábbi hívásban megadott fájlhoz vagy streamhez Save . (Öröklődés forrása Image) |
| SelectActiveFrame(FrameDimension, Int32) |
Kiválasztja a dimenzió és az index által megadott keretet. (Öröklődés forrása Image) |
| SetPixel(Int32, Int32, Color) |
A megadott képpont színét állítja be ebben a Bitmapnézetben. |
| SetPropertyItem(PropertyItem) |
Ebben a fájlban Imageegy tulajdonságelemet (metaadatot) tárol. (Öröklődés forrása Image) |
| SetResolution(Single, Single) |
Ennek a megoldásnak a feloldása Bitmap. |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |
| UnlockBits(BitmapData) |
Feloldja ezt a Bitmap rendszermemóriából. |
Explicit interfész-implementációk
| Name | Description |
|---|---|
| ISerializable.GetObjectData(SerializationInfo, StreamingContext) |
Feltölti a SerializationInfo célobjektum szerializálásához szükséges adatokat. (Öröklődés forrása Image) |
A következőre érvényes:
Lásd még
- PictureBox
- képek, bitképek és metafájlok
- Képek, Bitképek, Ikonok és Metafájlok használata