LoadPixels
RasterImage.LoadPixels method
Carga píxeles.
public Color[] LoadPixels(Rectangle rectangle)
Parámetro | Escribe | Descripción |
---|---|---|
rectangle | Rectangle | El rectángulo desde el que cargar píxeles. |
Valor_devuelto
La matriz de píxeles cargada.
Ejemplos
El siguiente ejemplo muestra cómo cargar y procesar píxeles de una imagen ráster. Por ejemplo, considere un problema de contar los píxeles completamente transparentes de una imagen.
[C#]
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(@"c:\temp\alpha.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Carga píxeles para toda la imagen. Cualquier parte rectangular de la imagen se puede especificar como parámetro del método Aspose.Imaging.RasterImage.LoadPixels.
Color[] pixels = rasterImage.LoadPixels(rasterImage.Bounds);
int count = 0;
foreach (Color pixel in pixels)
{
if (pixel.A == 0)
{
count++;
}
}
System.Console.WriteLine("The number of fully transparent pixels is {0}", count);
System.Console.WriteLine("The total number of pixels is {0}", image.Width * image.Height);
}
Este ejemplo muestra cómo cargar información de píxeles en una matriz de color de tipo, manipular la matriz y volver a establecerla en la imagen. Para realizar estas operaciones, este ejemplo crea un nuevo archivo de imagen (en formato GIF) utilizando el objeto MemoryStream.
[C#]
//Crear una instancia de MemoryStream
using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
{
//Cree una instancia de GifOptions y configure sus diversas propiedades, incluida la propiedad Fuente
Aspose.Imaging.ImageOptions.GifOptions gifOptions = new Aspose.Imaging.ImageOptions.GifOptions();
gifOptions.Source = new Aspose.Imaging.Sources.StreamSource(stream);
//Crear una instancia de Imagen
using (Aspose.Imaging.RasterImage image = (Aspose.Imaging.RasterImage)Aspose.Imaging.Image.Create(gifOptions, 500, 500))
{
//Obtenga los píxeles de la imagen especificando el área como límite de la imagen
Aspose.Imaging.Color[] pixels = image.LoadPixels(image.Bounds);
//Recorre la matriz y establece el color del píxel indexado alternativo
for (int index = 0; index < pixels.Length; index++)
{
if (index % 2 == 0)
{
//Establecer el color del píxel indexado en amarillo
pixels[index] = Aspose.Imaging.Color.Yellow;
}
else
{
//Establecer el color del píxel indexado en azul
pixels[index] = Aspose.Imaging.Color.Blue;
}
}
//Aplicar los cambios de píxel a la imagen
image.SavePixels(image.Bounds, pixels);
// guarda todos los cambios.
image.Save();
}
// Escribir MemoryStream en el archivo
using (System.IO.FileStream fileStream = new System.IO.FileStream(@"C:\temp\output.gif", System.IO.FileMode.Create))
{
stream.WriteTo(fileStream);
}
}
Ver también
- struct Color
- struct Rectangle
- class RasterImage
- espacio de nombres Aspose.Imaging
- asamblea Aspose.Imaging