Bitmap Clase

Definición

Encapsula un mapa de bits de GDI+, que está formado por los datos de píxeles de una imagen de gráficos y sus atributos. Bitmap es un objeto que se utiliza para trabajar con imágenes definidas mediante datos de píxeles.

public ref class Bitmap sealed : System::Drawing::Image
public sealed class Bitmap : System.Drawing.Image
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public sealed class Bitmap : System.Drawing.Image
type Bitmap = class
    inherit Image
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
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, usando 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 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 al 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 Windows sistemas operativos. 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, vea System.Drawing.Common only supported on Windows.

Nota

No se puede acceder a la Bitmap clase entre dominios de aplicación. Por ejemplo, si crea un dinámico 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 encuentra el campo "imagen nativa" en el tipo "System.Drawing.Image".

Constructores

Bitmap(Image)

Inicializa una nueva instancia de la clase Bitmap a partir de la imagen especificada existente.

Bitmap(Image, Int32, Int32)

Inicializa una nueva instancia de la clase Bitmap a partir de la imagen existente especificada, escalada al tamaño especificado.

Bitmap(Image, Size)

Inicializa una nueva instancia de la clase Bitmap a partir de la imagen existente especificada, escalada al tamaño especificado.

Bitmap(Int32, Int32)

Inicializa una nueva instancia de la clase Bitmap con el tamaño especificado.

Bitmap(Int32, Int32, Graphics)

Inicializa una nueva instancia de la clase Bitmap con el tamaño especificado y la resolución del objeto Graphics especificado.

Bitmap(Int32, Int32, Int32, PixelFormat, IntPtr)

Inicializa una nueva instancia de la clase Bitmap con el tamaño, el formato de píxel y los datos de píxel especificados.

Bitmap(Int32, Int32, PixelFormat)

Inicializa una nueva instancia de la clase Bitmap con el tamaño y el formato especificados.

Bitmap(Stream)

Inicializa una nueva instancia de la clase Bitmap a partir del flujo de datos especificado.

Bitmap(Stream, Boolean)

Inicializa una nueva instancia de la clase Bitmap a partir del flujo de datos especificado.

Bitmap(String)

Inicializa una nueva instancia de la clase Bitmap a partir del archivo especificado.

Bitmap(String, Boolean)

Inicializa una nueva instancia de la clase Bitmap a partir del archivo especificado.

Bitmap(Type, String)

Inicializa una nueva instancia de la clase Bitmap a partir de un recurso especificado.

Propiedades

Flags

Obtiene marcadores de atributo para los datos de píxel de Image.

(Heredado de Image)
FrameDimensionsList

Obtiene una matriz de GUID que representa las dimensiones de los marcos dentro de Image.

(Heredado de Image)
Height

Obtiene el alto en píxeles de Image.

(Heredado de Image)
HorizontalResolution

Obtiene la resolución horizontal, en píxeles por pulgada, de Image.

(Heredado de Image)
Palette

Obtiene o establece la paleta de colores utilizada para Image.

(Heredado de Image)
PhysicalDimension

Obtiene el ancho y el alto de esta imagen.

(Heredado de Image)
PixelFormat

Obtiene el formato de píxel de Image.

(Heredado de Image)
PropertyIdList

Obtiene los identificadores de los elementos de propiedad almacenados en Image.

(Heredado de Image)
PropertyItems

Obtiene todos los elementos de propiedad (fragmentos de metadatos) almacenados en Image.

(Heredado de Image)
RawFormat

Obtiene el formato de archivo de este Image.

(Heredado de Image)
Size

Obtiene el ancho y el alto de esta imagen, expresado en píxeles.

(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 Image.

(Heredado de Image)
Width

Obtiene el ancho en píxeles de Image.

(Heredado de Image)

Métodos

Clone()

Crea una copia exacta de este objeto Image.

(Heredado de Image)
Clone(Rectangle, PixelFormat)

Crea una copia de la sección de este objeto Bitmap definida por la estructura Rectangle y con una enumeración PixelFormat especificada.

Clone(RectangleF, PixelFormat)

Crea una copia de la sección de este objeto Bitmap definida con una enumeración PixelFormat especificada.

CreateObjRef(Type)

Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto.

(Heredado de MarshalByRefObject)
Dispose()

Libera todos los recursos utilizados por este Image.

(Heredado de Image)
Dispose(Boolean)

Libera los recursos no administrados que usa Image y, de forma opcional, libera los recursos administrados.

(Heredado de Image)
Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
FromHicon(IntPtr)

Crea un objeto Bitmap a partir de un identificador de Windows para un icono.

FromResource(IntPtr, String)

Crea un objeto Bitmap 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 que admite el codificador de imágenes especificado.

(Heredado de Image)
GetFrameCount(FrameDimension)

Devuelve el número de marcos de la dimensión especificada.

(Heredado de Image)
GetHashCode()

Sirve como la 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 de un icono.

GetLifetimeService()
Obsoleto.

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

GetPropertyItem(Int32)

Obtiene el elemento de propiedad especificado de Image.

(Heredado de Image)
GetThumbnailImage(Int32, Int32, Image+GetThumbnailImageAbort, IntPtr)

Devuelve una miniatura de Image.

(Heredado de Image)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
InitializeLifetimeService()
Obsoleto.

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)

Bloquea un objeto Bitmap en la memoria del sistema.

LockBits(Rectangle, ImageLockMode, PixelFormat, BitmapData)

Bloquea un objeto Bitmap en la memoria del sistema.

MakeTransparent()

Hace que el color predeterminado sea transparente en este Bitmap.

MakeTransparent(Color)

Hace que el color especificado sea transparente para este objeto Bitmap.

MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
MemberwiseClone(Boolean)

Crea una copia superficial del objeto MarshalByRefObject actual.

(Heredado de MarshalByRefObject)
RemovePropertyItem(Int32)

Quita el elemento de propiedad especificado de Image.

(Heredado de Image)
RotateFlip(RotateFlipType)

Gira, voltea o gira y voltea el Image.

(Heredado de Image)
Save(Stream, ImageCodecInfo, EncoderParameters)

Guarda esta imagen en la secuencia especificada, con el codificador y los parámetros de codificador de imagen especificados.

(Heredado de Image)
Save(Stream, ImageFormat)

Guarda esta imagen en la secuencia especificada con el formato especificado.

(Heredado de Image)
Save(String)

Guarda Image en la secuencia o archivo especificado.

(Heredado de Image)
Save(String, ImageCodecInfo, EncoderParameters)

Guarda Image en el archivo especificado, con el codificador y los parámetros de codificador de imagen especificados.

(Heredado de Image)
Save(String, ImageFormat)

Guarda Image en el archivo especificado con el formato especificado.

(Heredado de Image)
SaveAdd(EncoderParameters)

Agrega un marco al archivo o la secuencia especificados en una llamada anterior al método Save. Utilice este método para guardar los marcos seleccionados de una imagen de varios marcos en otra imagen de varios marcos.

(Heredado de Image)
SaveAdd(Image, EncoderParameters)

Agrega un marco al archivo o la secuencia especificados en una llamada anterior al método Save.

(Heredado de Image)
SelectActiveFrame(FrameDimension, Int32)

Selecciona el marco que especifican la dimensión y el índice.

(Heredado de Image)
SetPixel(Int32, Int32, Color)

Establece el color en el píxel especificado en este Bitmap.

SetPropertyItem(PropertyItem)

Almacena un elemento de propiedad (fragmento de metadatos) en Image.

(Heredado de Image)
SetResolution(Single, Single)

Establece la resolución de este objeto Bitmap.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
UnlockBits(BitmapData)

Desbloquea este objeto Bitmap en la memoria del sistema.

Implementaciones de interfaz explícitas

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Llena SerializationInfo con los datos necesarios para serializar el objeto de destino.

(Heredado de Image)

Se aplica a

Consulte también