Califique este contenido
Contraer todo/Expandir todo Contraer todo
Esta página es específica de
Microsoft Visual Studio 2008/.NET Framework 3.5

Hay además otras versiones disponibles para:
Biblioteca de clases de .NET Framework
Bitmap (Clase)

Actualización: noviembre 2007

Encapsula mapas de bits de GDI+, que están formados 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.

Espacio de nombres:  System.Drawing
Ensamblado:  System.Drawing (en System.Drawing.dll)
Visual Basic (Declaración)
<SerializableAttribute> _
<ComVisibleAttribute(True)> _
Public NotInheritable Class Bitmap _
    Inherits Image
Visual Basic (Uso)
Dim instance As Bitmap
C#
[SerializableAttribute]
[ComVisibleAttribute(true)]
public sealed class Bitmap : Image
Visual C++
[SerializableAttribute]
[ComVisibleAttribute(true)]
public ref class Bitmap sealed : public Image
J#
/** @attribute SerializableAttribute */ 
/** @attribute ComVisibleAttribute(true) */
public final class Bitmap extends Image
JScript
public final class Bitmap extends Image

Un mapa de bits está formado por 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 formatos de archivo siguientes: BMP, GIF, EXIG, JPG, PNG y TIFF. Para obtener más información acerca de los formatos admitidos, vea Tipos de mapas de bits.

Puede crear imágenes a partir de archivos, secuencias y otros orígenes utilizando uno de los constructores de Bitmap y guardarlas en una secuencia o en el sistema de archivos con el método Save. Las imágenes se llevan a la pantalla o a la memoria utilizando el método DrawImage del objeto Graphics. 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.

4e7y164x.alert_note(es-es,VS.90).gifNota:

No es posible el acceso a la clase Bitmap en los dominios de las aplicaciones. Por ejemplo, si crea un AppDomain dinámico y varios pinceles, lápices y mapas de bits en ese dominio, y devuelve a continuación estos objetos al dominio de aplicación principal, puede utilizar correctamente los lápices y los pinceles. Sin embargo, si llama al método DrawImage para dibujar el objeto Bitmap que se va a convertir, recibirá la excepción siguiente.

La interacción remota no puede encontrar el campo "imagen nativa" en el tipo "System.Drawing.Image".

En el ejemplo de código siguiente se muestra cómo construir un nuevo Bitmap a partir de un archivo mediante los métodos GetPixel y SetPixel para volver a colorear la imagen. También utiliza las propiedades PixelFormat, Width y Height.

Este ejemplo se ha diseñado para utilizarlo con un formulario Windows Forms que contiene objetos Label, PictureBox y Button denominados Label1, PictureBox1 y Button1, respectivamente. Pegue el código en el formulario y asocie el método Button1_Click al evento Click del botón.

Visual Basic
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
C#
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.");
    }
}
Visual C++
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." );
      }

   }
J#
private Bitmap image1;

private void button1_Click(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.get_Width(); x++) {
            for (y = 0; y < image1.get_Height(); y++) {
                Color pixelColor = image1.GetPixel(x, y);
                Color newColor = Color.FromArgb(pixelColor.get_R(), 0, 0);

                image1.SetPixel(x, y, newColor);
            }
        }

        // Set the PictureBox to display the image.
        pictureBox1.set_Image(image1);

        // Display the pixel format in label1.
        label1.set_Text("Pixel format: " 
            + image1.get_PixelFormat().ToString());
    }
    catch (ArgumentException exp) {
        MessageBox.Show(("There was an error."  
            + "Check the path to the image file."));
    }
} //button1_Click
System..::.Object
  System..::.MarshalByRefObject
    System.Drawing..::.Image
      System.Drawing..::.Bitmap
Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile para Smartphone, Windows Mobile para Pocket PC

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

.NET Framework

Compatible con: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Compatible con: 3.5, 2.0, 1.0
Contenido de la comunidad   ¿Qué es Community Content?
Agregar contenido nuevo RSS  Anotaciones
Processing
© 2009 Microsoft Corporation. Reservados todos los derechos. Temas legales | Marcas Registradas | Declaración de privacidad
Page view tracker