Exportar (0) Imprimir
Expandir todo

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)

[SerializableAttribute]
[ComVisibleAttribute(true)]
public sealed class Bitmap : Image
/** @attribute SerializableAttribute */ 
/** @attribute ComVisibleAttribute(true) */
public final class Bitmap extends Image
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.

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.");
    }
}


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


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

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft