Choisir la langue
  1. Products
  2. Aspose.Imaging
  3. Animation maker
clearbit icon

Créer une animation pour .NET

Acheter pour $99
Partager
Instagram Logo Dribbble Logo Twitter Logo Youtube Logo

Comment créer une animation à l'aide de la bibliothèque .NET

Afin de créer une animation, nous utiliserons l'API Aspose.Imaging for .NET qui est une API de manipulation d'images riche en fonctionnalités, puissante et facile à utiliser pour la plate-forme Internet.

1
Install-Package Aspose.Imaging

Créer une image d'animation via .NET

Vous avez besoin Licence limitée Aspose.Imaging Animation Maker pour .NET pour essayer le code dans votre environnement.

  1. Créez une image animée avec comme instance d’une classe Image spécifique.
  2. Définir les options d'animation
  3. Ajouter les cadres
  4. Enregistrer ou exporter l'image dans le format animé souhaité, défini par les options

Configuration requise

Assurez-vous simplement que vous disposez des conditions préalables suivantes.

  • Microsoft Windows ou un système d'exploitation compatible avec .NET Core
  • Environnement de développement comme Visual Studio Code ou Microsoft Visual Studio.
  • Aspose.Imaging pour .NET DLL référencée dans votre projet.
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
using System;
 using Aspose.Imaging;
 using Aspose.Imaging.FileFormats.Gif;
 using Aspose.Imaging.FileFormats.Gif.Blocks;
 using Aspose.Imaging.ImageOptions;
 using Aspose.Imaging.Sources;

namespace CSharpTutorials
{
	class Program
	{
		static void Main(string[] args)
		{
			Metered metered = new Metered();
			metered.SetLicense("***********", // public key
							   "***********"  // private key
							  );

			// This code creates the animation from the image frames
			const int AnimationDuration = 1000;
			const int FrameDuration = 42;

			GifImage gifImage = null;
			try
			{
				foreach (var inputFilePath in Directory.GetFiles(inputFilesPath, fileMask))
				{
					RasterImage sourceImage = (RasterImage)Image.Load(inputFilePath);
					{
						if (gifImage == null)
						{
							GifOptions createOptions = new GifOptions
							{
								Source = new FileCreateSource(outputFilePath, false),
								BackgroundColor = Color.Transparent,
								FullFrame = true,
								LoopsCount = (int)(AnimationDuration / FrameDuration),
								Palette = ColorPaletteHelper.GetCloseImagePalette(sourceImage, 256)
							};

							gifImage = (GifImage)Image.Create(
											 createOptions,
									sourceImage.Width,
									sourceImage.Height);

							gifImage.InsertBlock(0, new GifGraphicsControlBlock());
							gifImage.SetFrameTime((ushort)FrameDuration);
							if (gifImage.PageCount > 0)
							{
								gifImage.RemoveBlock((IGifBlock)gifImage.Pages[0]);
							}
						}

						// add frame
						gifImage.AddPage(sourceImage);
					}
				}
			}
			finally
			{
				if (gifImage != null)
				{
					gifImage.Save();
					gifImage.Dispose();
				}
			}

		}
	}
}

Vous pouvez trouver d'autres cas et exemples d'animation autorisés ici