Manipulating GIF files

Support of export readable full frame gif to multipage image formats

Aspose.Imaging supports for full-frame export from gif format.

using Aspose.Imaging;
using Aspose.Imaging.FileFormats.Bmp;
using Aspose.Imaging.FileFormats.Dicom;
using Aspose.Imaging.FileFormats.Djvu;
using Aspose.Imaging.FileFormats.Emf;
using Aspose.Imaging.FileFormats.Eps;
using Aspose.Imaging.FileFormats.Eps.Consts;
using Aspose.Imaging.FileFormats.Jpeg;
using Aspose.Imaging.FileFormats.Jpeg2000;
using Aspose.Imaging.FileFormats.Pdf;
using Aspose.Imaging.FileFormats.Png;
using Aspose.Imaging.FileFormats.Psd;
using Aspose.Imaging.FileFormats.Svg;
using Aspose.Imaging.FileFormats.Tga;
using Aspose.Imaging.FileFormats.Tiff.Enums;
using Aspose.Imaging.ImageFilters.FilterOptions;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.Sources;
using Aspose.Imaging.Xmp;
using Aspose.Imaging.Xmp.Schemas.Dicom;
using System;
using System.IO;
using System.Linq;
using System.Threading.Tasks;
string templatesFolder = @"c:\Users\USER\Downloads\templates\";
string dataDir = templatesFolder;
string outputFilePath = dataDir + "result.tiff";
string outputFilePath1 = dataDir + "result2.tiff";
using (Image image = Image.Load(dataDir + "template.gif"))
{
image.Save(outputFilePath, new TiffOptions(TiffExpectedFormat.TiffDeflateRgb) { MultiPageOptions = new MultiPageOptions(new IntRange(0, 1)), FullFrame = true });
image.Save(outputFilePath1, new TiffOptions(TiffExpectedFormat.TiffDeflateRgb) { MultiPageOptions = new MultiPageOptions(new IntRange(0, 1)) });
}
File.Delete(dataDir + "result.tiff");
File.Delete(dataDir + "result2.tiff");

Support set of gif frame duration for all frames and option of the number of cycles in the GIF animation

Aspose.Imaging supports settting of gif frame duration and option of the number of cycles in the GIF animation

using Aspose.Imaging;
using Aspose.Imaging.FileFormats.Bmp;
using Aspose.Imaging.FileFormats.Dicom;
using Aspose.Imaging.FileFormats.Djvu;
using Aspose.Imaging.FileFormats.Emf;
using Aspose.Imaging.FileFormats.Eps;
using Aspose.Imaging.FileFormats.Eps.Consts;
using Aspose.Imaging.FileFormats.Gif;
using Aspose.Imaging.FileFormats.Gif.Blocks;
using Aspose.Imaging.FileFormats.Jpeg;
using Aspose.Imaging.FileFormats.Jpeg2000;
using Aspose.Imaging.FileFormats.Pdf;
using Aspose.Imaging.FileFormats.Png;
using Aspose.Imaging.FileFormats.Psd;
using Aspose.Imaging.FileFormats.Svg;
using Aspose.Imaging.FileFormats.Tga;
using Aspose.Imaging.FileFormats.Tiff.Enums;
using Aspose.Imaging.ImageFilters.FilterOptions;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.Sources;
using Aspose.Imaging.Xmp;
using Aspose.Imaging.Xmp.Schemas.Dicom;
using System;
using System.IO;
using System.Linq;
using System.Threading.Tasks;
string templatesFolder = @"c:\Users\USER\Downloads\templates\";
string dataDir = templatesFolder;
using (GifImage image = (GifImage)Image.Load(dataDir + "template.gif"))
{
image.SetFrameTime(2000);
((GifFrameBlock)image.Pages[0]).FrameTime = 200;
image.Save(dataDir + "result.gif", new GifOptions() { LoopsCount = 4 });
}
File.Delete(dataDir + "result.gif");