Bitmap Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Encapsula un mapa de bits de GDI+, que consta de los datos de píxeles de una imagen de gráficos y sus atributos. A Bitmap es un objeto que se usa para trabajar con imágenes definidas por datos de píxeles.
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
- Herencia
- Atributos
Ejemplos
En el ejemplo de código siguiente se muestra cómo construir un nuevo Bitmap a partir de un archivo mediante los GetPixel métodos y SetPixel para volver a colorear la imagen. También usa las PixelFormatpropiedades , Widthy Height .
Este ejemplo está diseñado para usarse con un formulario Windows Forms que contiene , LabelPictureBoxy Button denominado Label1, PictureBox1y Button1, respectivamente. Pegue el código en el formulario y asocie el Button1_Click método con el evento del Click botón.
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
Comentarios
Un mapa de bits consta de los datos de píxeles de una imagen de gráficos y sus atributos. Hay muchos formatos estándar para guardar un mapa de bits en un archivo. GDI+ admite los siguientes formatos de archivo: BMP, GIF, EXIF, JPG, PNG y TIFF. Para obtener más información sobre los formatos admitidos, vea Tipos de mapas de bits.
Puede crear imágenes a partir de archivos, secuencias y otros orígenes mediante uno de los Bitmap constructores y guardarlas en una secuencia o en el sistema de archivos con el Save método . Las imágenes se dibujan en la pantalla o en la memoria mediante el DrawImage método del Graphics objeto . Para obtener una lista de temas sobre cómo trabajar con archivos de imagen, vea Trabajar con imágenes, mapas de bits, iconos y metarchivos.
Nota:
En .NET 6 y versiones posteriores, el paquete System.Drawing.Common, que incluye este tipo, solo se admite en sistemas operativos Windows. El uso de este tipo en aplicaciones multiplataforma provoca advertencias en tiempo de compilación y excepciones en tiempo de ejecución. Para obtener más información, consulte System.Drawing.Common only supported on Windows (Solo se admite System.Drawing.Common en Windows).
Nota:
No se puede acceder a la Bitmap clase entre dominios de aplicación. Por ejemplo, si crea una dinámica AppDomain y crea varios pinceles, lápices y mapas de bits en ese dominio, vuelva a pasar estos objetos al dominio de aplicación principal, puede usar correctamente los lápices y pinceles. Sin embargo, si llama al DrawImage método para dibujar el serializado Bitmap, recibirá la siguiente excepción:
La comunicación remota no puede encontrar el campo "imagen nativa" en el tipo "System.Drawing.Image".
Constructores
| Nombre | Description |
|---|---|
| Bitmap(Image, Int32, Int32) |
Inicializa una nueva instancia de la Bitmap clase a partir de la imagen existente especificada, escalada al tamaño especificado. |
| Bitmap(Image, Size) |
Inicializa una nueva instancia de la Bitmap clase a partir de la imagen existente especificada, escalada al tamaño especificado. |
| Bitmap(Image) |
Inicializa una nueva instancia de la Bitmap clase a partir de la imagen existente especificada. |
| Bitmap(Int32, Int32, Graphics) |
Inicializa una nueva instancia de la Bitmap clase con el tamaño especificado y con la resolución del objeto especificado Graphics . |
| Bitmap(Int32, Int32, Int32, PixelFormat, IntPtr) |
Inicializa una nueva instancia de la Bitmap clase con el tamaño, el formato de píxel y los datos de píxeles especificados. |
| Bitmap(Int32, Int32, PixelFormat) |
Inicializa una nueva instancia de la Bitmap clase con el tamaño y el formato especificados. |
| Bitmap(Int32, Int32) |
Inicializa una nueva instancia de la Bitmap clase con el tamaño especificado. |
| Bitmap(Stream, Boolean) |
Inicializa una nueva instancia de la Bitmap clase a partir del flujo de datos especificado. |
| Bitmap(Stream) |
Inicializa una nueva instancia de la Bitmap clase a partir del flujo de datos especificado. |
| Bitmap(String, Boolean) |
Inicializa una nueva instancia de la Bitmap clase a partir del archivo especificado. |
| Bitmap(String) |
Inicializa una nueva instancia de la Bitmap clase a partir del archivo especificado. |
| Bitmap(Type, String) |
Inicializa una nueva instancia de la Bitmap clase a partir de un recurso especificado. |
Propiedades
| Nombre | Description |
|---|---|
| Flags |
Obtiene marcas de atributo para los datos de píxeles de este Imageobjeto . (Heredado de Image) |
| FrameDimensionsList |
Obtiene una matriz de GUID que representan las dimensiones de los marcos de este Imageobjeto . (Heredado de Image) |
| Height |
Obtiene el alto, en píxeles, de este Imageobjeto . (Heredado de Image) |
| HorizontalResolution |
Obtiene la resolución horizontal, en píxeles por pulgada, de este Imageobjeto . (Heredado de Image) |
| Palette |
Obtiene o establece la paleta de colores utilizada para este Imageobjeto . (Heredado de Image) |
| PhysicalDimension |
Obtiene el ancho y el alto de esta imagen. (Heredado de Image) |
| PixelFormat |
Obtiene el formato de píxel para este Imageobjeto . (Heredado de Image) |
| PropertyIdList |
Obtiene los identificadores de los elementos de propiedad almacenados en este Image. (Heredado de Image) |
| PropertyItems |
Obtiene todos los elementos de propiedad (fragmentos de metadatos) almacenados en este Imageobjeto . (Heredado de Image) |
| RawFormat |
Obtiene el formato de archivo de este Imageobjeto . (Heredado de Image) |
| Size |
Obtiene el ancho y el alto, en píxeles, de esta imagen. (Heredado de Image) |
| Tag |
Obtiene o establece un objeto que proporciona datos adicionales sobre la imagen. (Heredado de Image) |
| VerticalResolution |
Obtiene la resolución vertical, en píxeles por pulgada, de este Imageobjeto . (Heredado de Image) |
| Width |
Obtiene el ancho, en píxeles, de este Imageobjeto . (Heredado de Image) |
Métodos
| Nombre | Description |
|---|---|
| ApplyEffect(Effect, Rectangle) |
Modifica el mapa de bits aplicando el especificado |
| Clone() |
Crea una copia exacta de este Imageobjeto . (Heredado de Image) |
| Clone(Rectangle, PixelFormat) |
Crea una copia de la sección de esta Bitmap definida por Rectangle estructura y con una enumeración especificada PixelFormat . |
| Clone(RectangleF, PixelFormat) |
Crea una copia de la sección de esta Bitmap definida con una enumeración especificada PixelFormat . |
| ConvertFormat(PixelFormat, DitherType, PaletteType, ColorPalette, Single) |
Convierte el mapa de bits en el especificado |
| ConvertFormat(PixelFormat) |
Convierte el mapa de bits en el especificado |
| CreateObjRef(Type) |
Crea un objeto que contiene toda la información pertinente necesaria para generar un proxy usado para comunicarse con un objeto remoto. (Heredado de MarshalByRefObject) |
| Dispose() |
Libera todos los recursos usados por este Image. (Heredado de Image) |
| Dispose(Boolean) |
Libera los recursos no administrados utilizados por Image y, opcionalmente, libera los recursos administrados. (Heredado de Image) |
| Equals(Object) |
Determina si el objeto especificado es igual al objeto actual. (Heredado de Object) |
| FromHicon(IntPtr) |
Crea un objeto Bitmap a partir de un identificador de Windows a un icono. |
| FromResource(IntPtr, String) |
Crea un Bitmap objeto a partir del recurso de Windows especificado. |
| GetBounds(GraphicsUnit) |
Obtiene los límites de la imagen en la unidad especificada. (Heredado de Image) |
| GetEncoderParameterList(Guid) |
Devuelve información sobre los parámetros admitidos por el codificador de imágenes especificado. (Heredado de Image) |
| GetFrameCount(FrameDimension) |
Devuelve el número de fotogramas de la dimensión especificada. (Heredado de Image) |
| GetHashCode() |
Actúa como función hash predeterminada. (Heredado de Object) |
| GetHbitmap() |
Crea un objeto de mapa de bits GDI a partir de este Bitmapobjeto . |
| GetHbitmap(Color) |
Crea un objeto de mapa de bits GDI a partir de este Bitmapobjeto . |
| GetHicon() |
Devuelve el identificador a un icono. |
| GetLifetimeService() |
Obsoletos.
Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia. (Heredado de MarshalByRefObject) |
| GetPixel(Int32, Int32) |
Obtiene el color del píxel especificado en este Bitmapobjeto . |
| GetPropertyItem(Int32) |
Obtiene el elemento de propiedad especificado de este Imageobjeto . (Heredado de Image) |
| GetThumbnailImage(Int32, Int32, Image+GetThumbnailImageAbort, IntPtr) |
Devuelve una miniatura para este Imageobjeto . (Heredado de Image) |
| GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
| InitializeLifetimeService() |
Obsoletos.
Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia. (Heredado de MarshalByRefObject) |
| LockBits(Rectangle, ImageLockMode, PixelFormat, BitmapData) |
Bloquea un elemento en la Bitmap memoria del sistema. |
| LockBits(Rectangle, ImageLockMode, PixelFormat) |
Bloquea un elemento en la Bitmap memoria del sistema. |
| MakeTransparent() |
Hace que el color transparente predeterminado sea transparente para este Bitmap. |
| MakeTransparent(Color) |
Hace que el color especificado sea transparente para este Bitmap. |
| MemberwiseClone() |
Crea una copia superficial del Objectactual. (Heredado de Object) |
| MemberwiseClone(Boolean) |
Crea una copia superficial del objeto actual MarshalByRefObject . (Heredado de MarshalByRefObject) |
| RemovePropertyItem(Int32) |
Quita el elemento de propiedad especificado de este Image. (Heredado de Image) |
| RotateFlip(RotateFlipType) |
Gira, voltea o gira y voltea el Imageobjeto . (Heredado de Image) |
| Save(Stream, ImageCodecInfo, EncoderParameters) |
Guarda esta imagen en la secuencia especificada, con los parámetros de codificador y codificador de imágenes especificados. (Heredado de Image) |
| Save(Stream, ImageFormat) |
Guarda esta imagen en la secuencia especificada en el formato especificado. (Heredado de Image) |
| Save(String, ImageCodecInfo, EncoderParameters) |
Guarda esto Image en el archivo especificado, con los parámetros especificados encoder y image-encoder. (Heredado de Image) |
| Save(String, ImageFormat) |
Lo Image guarda en el archivo especificado en el formato especificado. (Heredado de Image) |
| Save(String) |
Guarda esto Image en el archivo o secuencia especificados. (Heredado de Image) |
| SaveAdd(EncoderParameters) |
Agrega un marco al archivo o secuencia especificado en una llamada anterior al Save método . Use este método para guardar fotogramas seleccionados de una imagen de varios fotogramas en otra imagen de varios fotogramas. (Heredado de Image) |
| SaveAdd(Image, EncoderParameters) |
Agrega un marco al archivo o secuencia especificado en una llamada anterior al Save método . (Heredado de Image) |
| SelectActiveFrame(FrameDimension, Int32) |
Selecciona el marco especificado por la dimensión y el índice. (Heredado de Image) |
| SetPixel(Int32, Int32, Color) |
Establece el color del píxel especificado en este Bitmap. |
| SetPropertyItem(PropertyItem) |
Almacena un elemento de propiedad (fragmento de metadatos) en este Image. (Heredado de Image) |
| SetResolution(Single, Single) |
Establece la resolución de este Bitmapobjeto . |
| ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
| UnlockBits(BitmapData) |
Desbloquea esto Bitmap desde la memoria del sistema. |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| ISerializable.GetObjectData(SerializationInfo, StreamingContext) |
Rellena con SerializationInfo los datos necesarios para serializar el objeto de destino. (Heredado de Image) |