c# - publicitarios - que tamaño debe tener un gif
¿Cómo cambiar el tamaño de una imagen animada de GIF usando C#? (2)
¿Hay algún método para crear una copia de una imagen animada de GIF usando C #?
Lo que quiero es generar una copia de una imagen dada gif usando los parámetros de altura y ancho que proporciona el usuario. Lo he intentado durante un par de horas para lograr esto, pero la imagen resultante no conserva las animaciones originales.
Necesita recorrer los cuadros en el GIF animado y cambiar el tamaño de cada uno.
También es posible que desee echar un vistazo a GifLib .
Me tomó un tiempo encontrar esto, pero finalmente encontré una solución:
Instale Magick.NET a través de NuGet, la licencia se puede encontrar aquí:
https://magick.codeplex.com/license
Código de ejemplo:
var newWidth = 100;
using (var collection = new MagickImageCollection(new FileInfo(@"C:/test.gif")))
{
collection.Coalesce();
foreach (var image in collection)
{
image.Resize(newWidth, 0);
}
collection.Write(@"c:/resized.gif");
}
De mis pruebas, esto funciona con canales alfa y velocidades de cuadros variables. Parece ser perfecto!