Bitmap Clase

Definición

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 effect.

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 format mediante el especificado ditherType. Los datos de píxeles originales se reemplazan por el nuevo formato.

ConvertFormat(PixelFormat)

Convierte el mapa de bits en el especificado format. Los datos de píxeles originales se reemplazan por el nuevo formato.

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)

Se aplica a

Consulte también