Class GifImage

Class GifImage

Le nom : Aspose.Imaging.FileFormats.Gif Assemblée: Aspose.Imaging.dll (25.4.0)

L’API pour le format d’image GIF (Graphical Interchange Format) fournitdéveloppeurs avec des outils polyvalents pour traiter les images de raster comprimées etGIF animés. offrant des fonctionnalités telles que le traitement des métadonnées XMP, la palette de couleursréglages, contexte et contrôle de couleur transparent, paramètres d’opacité, résignation,crop, application de filtre, corrections gamma, ajustement de contraste, grayscaletransformation, et la conversion à d’autres formats. Cette API permet sans filManipulation et amélioration des images GIF pour un large éventail d’applications.

[JsonObject(MemberSerialization.OptIn)]
public sealed class GifImage : RasterCachedMultipageImage, IDisposable, IObjectWithBounds, IRasterImageArgb32PixelLoader, IRasterImageRawDataLoader, IHasXmpData, IHasMetadata, IMultipageImageExt, IMultipageImage

Inheritance

object DisposableObject DataStreamSupporter Image RasterImage RasterCachedImage RasterCachedMultipageImage GifImage

Implements

IDisposable , IObjectWithBounds , IRasterImageArgb32PixelLoader , IRasterImageRawDataLoader , IHasXmpData , IHasMetadata , IMultipageImageExt , IMultipageImage

I membri ereditari

RasterCachedMultipageImage.AdjustBrightness(int) , RasterCachedMultipageImage.AdjustContrast(float) , RasterCachedMultipageImage.AdjustGamma(float, float, float) , RasterCachedMultipageImage.AdjustGamma(float) , RasterCachedMultipageImage.Blend(Point, RasterImage, Rectangle, byte) , RasterCachedMultipageImage.BinarizeFixed(byte) , RasterCachedMultipageImage.BinarizeBradley(double, int) , RasterCachedMultipageImage.BinarizeBradley(double) , RasterCachedMultipageImage.BinarizeOtsu() , RasterCachedMultipageImage.Crop(Rectangle) , RasterCachedMultipageImage.Crop(int, int, int, int) , RasterCachedMultipageImage.Dither(DitheringMethod, int, IColorPalette) , RasterCachedMultipageImage.Grayscale() , RasterCachedMultipageImage.NormalizeHistogram() , RasterCachedMultipageImage.Rotate(float, bool, Color) , RasterCachedMultipageImage.RotateFlip(RotateFlipType) , RasterCachedMultipageImage.RotateFlipAll(RotateFlipType) , RasterCachedMultipageImage.Resize(int, int, ResizeType) , RasterCachedMultipageImage.Resize(int, int, ImageResizeSettings) , RasterCachedMultipageImage.ResizeWidthProportionally(int, ResizeType) , RasterCachedMultipageImage.ResizeHeightProportionally(int, ResizeType) , RasterCachedMultipageImage.ReplaceColor(int, byte, int) , RasterCachedMultipageImage.ReplaceNonTransparentColors(int) , RasterCachedMultipageImage.Filter(Rectangle, FilterOptionsBase) , RasterCachedMultipageImage.NormalizeAngle(bool, Color) , RasterCachedMultipageImage.CacheData() , RasterCachedMultipageImage.GetSerializedStream(ImageOptionsBase, Rectangle, out int) , RasterCachedMultipageImage.Height , RasterCachedMultipageImage.Width , RasterCachedMultipageImage.BitsPerPixel , RasterCachedMultipageImage.IsCached , RasterCachedMultipageImage.PageCount , RasterCachedMultipageImage.Pages , RasterCachedMultipageImage.HasAlpha , RasterCachedMultipageImage.HasTransparentColor , RasterCachedMultipageImage.ImageOpacity , RasterCachedMultipageImage.BackgroundColor , RasterCachedMultipageImage.XmpData , RasterCachedMultipageImage.PageExportingAction , RasterCachedImage.CacheData() , RasterCachedImage.Blend(Point, RasterImage, Rectangle, byte) , RasterCachedImage.Resize(int, int, ResizeType) , RasterCachedImage.Resize(int, int, ImageResizeSettings) , RasterCachedImage.RotateFlip(RotateFlipType) , RasterCachedImage.Rotate(float, bool, Color) , RasterCachedImage.Crop(Rectangle) , RasterCachedImage.Dither(DitheringMethod, int, IColorPalette) , RasterCachedImage.Grayscale() , RasterCachedImage.NormalizeHistogram() , RasterCachedImage.BinarizeFixed(byte) , RasterCachedImage.BinarizeOtsu() , RasterCachedImage.BinarizeBradley(double, int) , RasterCachedImage.BinarizeBradley(double) , RasterCachedImage.AdjustBrightness(int) , RasterCachedImage.AdjustContrast(float) , RasterCachedImage.AdjustGamma(float, float, float) , RasterCachedImage.AdjustGamma(float) , RasterCachedImage.IsCached , RasterImage.RemoveMetadata() , RasterImage.Save(Stream, ImageOptionsBase, Rectangle) , RasterImage.GetModifyDate(bool) , RasterImage.Dither(DitheringMethod, int) , RasterImage.Dither(DitheringMethod, int, IColorPalette) , RasterImage.GetDefaultPixels(Rectangle, IPartialArgb32PixelLoader) , RasterImage.GetDefaultRawData(Rectangle, IPartialRawDataLoader, RawDataSettings) , RasterImage.GetDefaultArgb32Pixels(Rectangle) , RasterImage.GetDefaultRawData(Rectangle, RawDataSettings) , RasterImage.GetArgb32Pixel(int, int) , RasterImage.GetPixel(int, int) , RasterImage.SetArgb32Pixel(int, int, int) , RasterImage.SetPixel(int, int, Color) , RasterImage.ReadScanLine(int) , RasterImage.ReadArgb32ScanLine(int) , RasterImage.WriteScanLine(int, Color[]) , RasterImage.WriteArgb32ScanLine(int, int[]) , RasterImage.LoadPartialArgb32Pixels(Rectangle, IPartialArgb32PixelLoader) , RasterImage.LoadPartialPixels(Rectangle, IPartialPixelLoader) , RasterImage.LoadArgb32Pixels(Rectangle) , RasterImage.LoadArgb64Pixels(Rectangle) , RasterImage.LoadPartialArgb64Pixels(Rectangle, IPartialArgb64PixelLoader) , RasterImage.LoadPixels(Rectangle) , RasterImage.LoadCmykPixels(Rectangle) , RasterImage.LoadCmyk32Pixels(Rectangle) , RasterImage.LoadRawData(Rectangle, RawDataSettings, IPartialRawDataLoader) , RasterImage.LoadRawData(Rectangle, Rectangle, RawDataSettings, IPartialRawDataLoader) , RasterImage.SaveRawData(byte[], int, Rectangle, RawDataSettings) , RasterImage.SaveArgb32Pixels(Rectangle, int[]) , RasterImage.SavePixels(Rectangle, Color[]) , RasterImage.SaveCmykPixels(Rectangle, CmykColor[]) , RasterImage.SaveCmyk32Pixels(Rectangle, int[]) , RasterImage.SetResolution(double, double) , RasterImage.SetPalette(IColorPalette, bool) , RasterImage.Resize(int, int, ImageResizeSettings) , RasterImage.Rotate(float, bool, Color) , RasterImage.Rotate(float) , RasterImage.BinarizeFixed(byte) , RasterImage.BinarizeOtsu() , RasterImage.BinarizeBradley(double) , RasterImage.BinarizeBradley(double, int) , RasterImage.Blend(Point, RasterImage, Rectangle, byte) , RasterImage.Blend(Point, RasterImage, byte) , RasterImage.Grayscale() , RasterImage.NormalizeHistogram() , RasterImage.AdjustBrightness(int) , RasterImage.AdjustContrast(float) , RasterImage.AdjustGamma(float, float, float) , RasterImage.AdjustGamma(float) , RasterImage.GetSkewAngle() , RasterImage.NormalizeAngle() , RasterImage.NormalizeAngle(bool, Color) , RasterImage.Filter(Rectangle, FilterOptionsBase) , RasterImage.ReplaceColor(Color, byte, Color) , RasterImage.ReplaceColor(int, byte, int) , RasterImage.ReplaceNonTransparentColors(Color) , RasterImage.ReplaceNonTransparentColors(int) , RasterImage.ToBitmap() , RasterImage.PremultiplyComponents , RasterImage.UseRawData , RasterImage.UpdateXmpData , RasterImage.XmpData , RasterImage.RawIndexedColorConverter , RasterImage.RawCustomColorConverter , RasterImage.RawFallbackIndex , RasterImage.RawDataSettings , RasterImage.UsePalette , RasterImage.RawDataFormat , RasterImage.RawLineSize , RasterImage.IsRawDataAvailable , RasterImage.HorizontalResolution , RasterImage.VerticalResolution , RasterImage.HasTransparentColor , RasterImage.HasAlpha , RasterImage.TransparentColor , RasterImage.ImageOpacity , Image.CanLoad(string) , Image.CanLoad(string, LoadOptions) , Image.CanLoad(Stream) , Image.CanLoad(Stream, LoadOptions) , Image.Create(ImageOptionsBase, int, int) , Image.Create(Image[]) , Image.Create(MultipageCreateOptions) , Image.Create(string[], bool) , Image.Create(string[]) , Image.Create(Image[], bool) , Image.GetFileFormat(string) , Image.GetFileFormat(Stream) , Image.GetFittingRectangle(Rectangle, int, int) , Image.GetFittingRectangle(Rectangle, int[], int, int) , Image.Load(string, LoadOptions) , Image.Load(string) , Image.Load(Stream, LoadOptions) , Image.Load(Stream) , Image.GetProportionalWidth(int, int, int) , Image.GetProportionalHeight(int, int, int) , Image.RemoveMetadata() , Image.CanSave(ImageOptionsBase) , Image.Resize(int, int) , Image.Resize(int, int, ResizeType) , Image.Resize(int, int, ImageResizeSettings) , Image.GetDefaultOptions(object[]) , Image.GetOriginalOptions() , Image.ResizeWidthProportionally(int) , Image.ResizeHeightProportionally(int) , Image.ResizeWidthProportionally(int, ResizeType) , Image.ResizeHeightProportionally(int, ResizeType) , Image.ResizeWidthProportionally(int, ImageResizeSettings) , Image.ResizeHeightProportionally(int, ImageResizeSettings) , Image.RotateFlip(RotateFlipType) , Image.Rotate(float) , Image.Crop(Rectangle) , Image.Crop(int, int, int, int) , Image.Save() , Image.Save(string) , Image.Save(string, ImageOptionsBase) , Image.Save(string, ImageOptionsBase, Rectangle) , Image.Save(Stream, ImageOptionsBase) , Image.Save(Stream, ImageOptionsBase, Rectangle) , Image.GetSerializedStream(ImageOptionsBase, Rectangle, out int) , Image.SetPalette(IColorPalette, bool) , Image.BitsPerPixel , Image.Bounds , Image.Container , Image.Height , Image.Palette , Image.UsePalette , Image.Size , Image.Width , Image.InterruptMonitor , Image.BufferSizeHint , Image.AutoAdjustPalette , Image.HasBackgroundColor , Image.FileFormat , Image.BackgroundColor , DataStreamSupporter.CacheData() , DataStreamSupporter.Save() , DataStreamSupporter.Save(Stream) , DataStreamSupporter.Save(string) , DataStreamSupporter.Save(string, bool) , DataStreamSupporter.DataStreamContainer , DataStreamSupporter.IsCached , DisposableObject.Dispose() , DisposableObject.Disposed , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()

Examples

Exporter une partie de l’animation à partir d’une image GIF basée sur un intervalle de temps.

using (var image = Image.Load("Animation.gif"))
                                                                             {
                                                                                 var options = new GifOptions
                                                                                 {
                                                                                     FullFrame = true,
                                                                                     MultiPageOptions = new MultiPageOptions
                                                                                     {
                                                                                         Mode = MultiPageMode.TimeInterval,
                                                                                         TimeInterval = new TimeInterval(0, 400)
                                                                                     }
                                                                                 };

                                                                                 image.Save("PartOfAnimation.gif", options);
                                                                             }

Cet exemple montre comment créer une image GIF et la sauvegarder dans un fichier.

string dir = "c:\\temp\\";

                                                                              // Create a GIF Frame block of 100x100 px.
                                                                              using (Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock firstBlock = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100))
                                                                              {
                                                                                  // Fill the entire block in red.
                                                                                  Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(firstBlock);
                                                                                  Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
                                                                                  gr.FillRectangle(brush, firstBlock.Bounds);

                                                                                  using (Aspose.Imaging.FileFormats.Gif.GifImage gifImage = new Aspose.Imaging.FileFormats.Gif.GifImage(firstBlock))
                                                                                  {
                                                                                      gifImage.Save(dir + "output.gif");
                                                                                  }
                                                                              }

Créer une image GIF multipage en utilisant des images de raster de page unique.

static void Main(string[] args)
                                                                      {
                                                                          // Load frames
                                                                          var frames = LoadFrames("Animation frames").ToArray();

                                                                          // Create GIF image using the first frame
                                                                          using (var image = new GifImage(new GifFrameBlock(frames[0])))
                                                                          {
                                                                              // Add frames to the GIF image using the AddPage method
                                                                              for (var index = 1; index < frames.Length; index++)
                                                                              {
                                                                                  image.AddPage(frames[index]);
                                                                              }

                                                                              // Save GIF image
                                                                              image.Save("Multipage.gif");
                                                                          }
                                                                      }

                                                                      private static IEnumerable<rasterimage> LoadFrames(string directory)
                                                                      {
                                                                          foreach (var filePath in Directory.GetFiles(directory))
                                                                          {
                                                                              yield return (RasterImage)Image.Load(filePath);
                                                                          }
                                                                      }</rasterimage>

Constructors

GifImage(GifFrameBlock et IColorPalette)

Démarrez un nouvel objet Aspose.Imaging.FileFormats.Gif. GifImage avec des paramètres spécifiés pourpremier cadre et palette mondiale. commencer à gérer les images GIF rapidement, assurerUne représentation précise avec des paramètres personnalisables pour des résultats optimaux.

public GifImage(GifFrameBlock firstFrame, IColorPalette globalPalette)

Parameters

firstFrame GifFrameBlock

Le premier cadre pour initialiser l’image GIF avec.

globalPalette IColorPalette

Remarquez que si les deux firstFrame’ et <code class=paramaf">globalPalette’ sont nuls, alors la palette globale par défaut est utilisée.

Examples

Cet exemple montre comment créer une image GIF avec une palette personnalisée et la sauver dans un fichier.

string dir = "c:\\temp\\";

                                                                                                    // Create a GIF Frame block of 100x100 px.
                                                                                                    using (Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock firstBlock = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100))
                                                                                                    {
                                                                                                        // Fill the entire block in red.
                                                                                                        Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(firstBlock);
                                                                                                        Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
                                                                                                        gr.FillRectangle(brush, firstBlock.Bounds);

                                                                                                        // Use 4-bit palette to reduce the image size. The quality can get worse.
                                                                                                        Aspose.Imaging.IColorPalette palette = Aspose.Imaging.ColorPaletteHelper.Create4Bit();

                                                                                                        using (Aspose.Imaging.FileFormats.Gif.GifImage gifImage = new Aspose.Imaging.FileFormats.Gif.GifImage(firstBlock, palette))
                                                                                                        {
                                                                                                            gifImage.Save(dir + "output.gif");
                                                                                                        }
                                                                                                    }

Exceptions

ArgumentNullException

La firstFrame’ ne peut pas être nulle

ArgumentException

La firstFrame’ appartient déjà à une autre image.

GifImageException

La globalPalette’ spécifiée doit contenir le nombre d’entrée égale à la puissance de 2. la taille minimale de la palette est 2, le maximum est 256.

GifImage(GifFrameBlock)

Créer des images GIF devient sans effort avec le Aspose.Imaging.FileFormats.Gif.avec seulement le premier paramètre Frame, il entre dans un monde de dynamiqueLa communication visuelle.

public GifImage(GifFrameBlock firstFrame)

Parameters

firstFrame GifFrameBlock

Le premier cadre pour initialiser l’image GIF avec.

Examples

Cet exemple montre comment créer une image GIF et la sauvegarder dans un fichier.

string dir = "c:\\temp\\";

                                                                              // Create a GIF Frame block of 100x100 px.
                                                                              using (Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock firstBlock = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100))
                                                                              {
                                                                                  // Fill the entire block in red.
                                                                                  Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(firstBlock);
                                                                                  Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
                                                                                  gr.FillRectangle(brush, firstBlock.Bounds);

                                                                                  using (Aspose.Imaging.FileFormats.Gif.GifImage gifImage = new Aspose.Imaging.FileFormats.Gif.GifImage(firstBlock))
                                                                                  {
                                                                                      gifImage.Save(dir + "output.gif");
                                                                                  }
                                                                              }

L’exemple ci-dessous montre comment composer une image GIF animée à partir de blocs individuels Gif.

string dir = "c:\\temp\\";

                                                                                                       // Create a GIF image 100 x 100 px.
                                                                                                       // The first block is fully black by default.
                                                                                                       using (Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock firstBlock = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100))
                                                                                                       using (Aspose.Imaging.FileFormats.Gif.GifImage gifImage = new Aspose.Imaging.FileFormats.Gif.GifImage(firstBlock))
                                                                                                       {
                                                                                                           // The first circle is red
                                                                                                           Aspose.Imaging.Brushes.SolidBrush brush1 = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);

                                                                                                           // The second circle is black
                                                                                                           Aspose.Imaging.Brushes.SolidBrush brush2 = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Black);

                                                                                                           // Gradually inscrease the angle of the red arc shape.
                                                                                                           for (int angle = 10; angle &lt;= 360; angle += 10)
                                                                                                           {
                                                                                                               Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock block = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100);

                                                                                                               Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(block);
                                                                                                               gr.FillPie(brush1, block.Bounds, 0, angle);

                                                                                                               gifImage.AddBlock(block);
                                                                                                           }

                                                                                                           // Gradually inscrease the angle of the black arc and wipe out the red arc.
                                                                                                           for (int angle = 10; angle &lt;= 360; angle += 10)
                                                                                                           {
                                                                                                               Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock block = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100);

                                                                                                               Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(block);
                                                                                                               gr.FillPie(brush2, block.Bounds, 0, angle);
                                                                                                               gr.FillPie(brush1, block.Bounds, angle, 360 - angle);

                                                                                                               gifImage.AddBlock(block);
                                                                                                           }

                                                                                                           gifImage.Save(dir + "animated_radar.gif");
                                                                                                       }

Exceptions

ArgumentNullException

La firstFrame’ ne peut pas être nulle

ArgumentException

La firstFrame’ appartient déjà à une autre image.

GifImageException

La palette spécifiée doit contenir le nombre d’entrées équivalent à la puissance de 2. la taille minimale des palettes est 2, le maximum est 256.

GifImage(GifFrameBlock, IColorPalette, bool, byte, bite, buol)

Commencez sans effort avec le constructeur Aspose.Imaging.FileFormats.Gif. GifImage.méthode simple, vous pouvez plonger dans la création de GIF animés avec facilité.firstFrame, globalPalette, paletteColorResolution, aspectRatio, et autresParamètres, et vous êtes prêt à apporter vos visuels à la vie.

public GifImage(GifFrameBlock firstFrame, IColorPalette globalPalette, bool isPaletteSorted, byte paletteColorResolution, byte paletteBackgroundColorIndex, byte aspectRatio, bool hasTrailer)

Parameters

firstFrame GifFrameBlock

Le premier cadre pour initialiser l’image GIF avec.

globalPalette IColorPalette

Remarquez que si les deux firstFrame’ et <code class=paramaf">globalPalette’ sont nuls, alors la palette globale par défaut est utilisée.

isPaletteSorted bool

Si la palette est réglée à “true”, notez que le paramètre est utilisé lorsque globalPalette" n’est pas null.

paletteColorResolution byte

Note que le paramètre est utilisé lorsque globalPalette’ n’est pas null.

paletteBackgroundColorIndex byte

L’indice de couleur de fond palette.

aspectRatio byte

Le rapport de l’aspect.

hasTrailer bool

si l’image du gif est fixée à ’true’ il n’y a pas de trailer écrit à la fin du courant.

Exceptions

ArgumentNullException

La firstFrame’ ne peut pas être nulle

ArgumentException

La firstFrame’ appartient déjà à une autre image.

GifImageException

La globalPalette’ spécifiée doit contenir le nombre d’entrée égale à la puissance de 2. la taille minimale de la palette est 2, le maximum est 256.

Properties

ActiveFrame

Gérer et manipuler les cadres avec cette propriété, permettant une navigation douce etmodifier le cadre actif dans l’image GIF.

public GifFrameBlock ActiveFrame { get; set; }

Valore di proprietà

GifFrameBlock

Examples

L’exemple ci-dessous montre comment supprimer tous les blocs d’une image GIF.

using (Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock firstBlock = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100))
                                                                                 using (Aspose.Imaging.FileFormats.Gif.GifImage gifImage = new Aspose.Imaging.FileFormats.Gif.GifImage(firstBlock))
                                                                                 {
                                                                                     if (gifImage.ActiveFrame != null)
                                                                                     {
                                                                                         System.Console.WriteLine("Active frame size: {0}", gifImage.ActiveFrame.Size);
                                                                                     }
                                                                                     else
                                                                                     {
                                                                                         System.Console.WriteLine("Active frame is not set");
                                                                                     }

                                                                                     System.Console.WriteLine("Clear all the blocks");
                                                                                     gifImage.ClearBlocks();

                                                                                     if (gifImage.ActiveFrame != null)
                                                                                     {
                                                                                         System.Console.WriteLine("Active frame size: {0}", gifImage.ActiveFrame.Size);
                                                                                     }
                                                                                     else
                                                                                     {
                                                                                         System.Console.WriteLine("Active frame is not set");
                                                                                     }
                                                                                 }

                                                                                 // The output looks like this:
                                                                                 // Active frame size: { Width = 100, Height = 100}
                                                                                 // Clear all the blocks
                                                                                 // Active frame is not set

BackgroundColor

Gérer la couleur de fond de l’image GIF avec cette propriété.récupérer la couleur de fond pour assurer la cohérence et améliorer l’attrait visuel.

public override Color BackgroundColor { get; set; }

Valore di proprietà

Color

BackgroundColorIndex

Contrôlez l’indice de couleur de fond de l’image GIF en utilisant cette propriété.récupérer l’indice pour maintenir la cohérence ou obtenir les effets visuels désirés.

public byte BackgroundColorIndex { get; set; }

Valore di proprietà

byte

Blocks

Obtenez l’accès aux blocs GIF sans fil avec cette propriété, facilitant facilementrécupération et manipulation des structures de données sous-jacentes de l’image.

public IGifBlock[] Blocks { get; }

Valore di proprietà

IGifBlock [ ]

FileFormat

Retirez le format de fichier sans effort avec cette propriété. c’est votre sourcepour identifier le format de vos fichiers. intégré sans fil dans votre flux de travail,Il fournit des informations essentielles sans aucune hassle.

public override FileFormat FileFormat { get; }

Valore di proprietà

FileFormat

HasBackgroundColor

Cette propriété détermine si l’image GIF contient une couleur de fond.Vraiment, il indique que l’image comprend une couleur de fond.

public override bool HasBackgroundColor { get; }

Valore di proprietà

bool

HasTrailer

Gérer la présence d’un trailer dans vos fichiers GIF avec cette propriété.il faut vérifier si un trailer existe ou définit sa présence, cette propriété simplifie laGardez vos fichiers GIF structurés et conformes à cette fonction intuitive.

public bool HasTrailer { get; set; }

Valore di proprietà

bool

HasTransparentColor

Déterminer si le cadre actif de l’image GIF contient une couleur transparente.Cette propriété offre un moyen pratique de vérifier la transparence dans l’image.

public override bool HasTransparentColor { get; set; }

Valore di proprietà

bool

ImageOpacity

Réduire l’opacité du cadre actif dans l’image, offrant une visionson niveau de transparence.Cette propriété est particulièrement utile pour comprendre lele degré de transparence ou d’opacité du cadre actif dans l’image.

public override float ImageOpacity { get; }

Valore di proprietà

float

IsInterlaced

Déterminer si l’image est interligée, ce qui affecte son affichage pendant le chargement.La propriété offre une compréhension du comportement rendu de l’image, essentiel pourOptimiser les stratégies de chargement et améliorer l’expérience de vision globale.

public bool IsInterlaced { get; }

Valore di proprietà

bool

IsPaletteSorted

Contrôlez la sortie de la palette dans vos images GIF en utilisant cette propriété.Vous devez vérifier si la palette est sortée ou définir le comportement de sortement, ceciLa propriété fournit un moyen simple de gérer la palette organisation dans votreLe fichier GIF.

public bool IsPaletteSorted { get; set; }

Valore di proprietà

bool

LoopsCount

Retirez le compte de loop sans effort avec cette propriété. si votre image GIF inclutinformations de loop, cette propriété vous donne un accès rapide à la comptabilité du loop.Vous pouvez gérer le comportement de looping dans vos fichiers GIF.

public int LoopsCount { get; set; }

Valore di proprietà

int

PageCount

Retrouvez le nombre total de pages contenues dans l’image avec cePropriété simple. Idéal pour évaluer rapidement l’étendue du contenu d’image.

public override int PageCount { get; }

Valore di proprietà

int

Pages

Obtenez accès aux pages de l’image à travers cette propriété convenable,permettant la navigation et la manipulation sans fil des pages individuelles selon les besoins.

public override Image[] Pages { get; }

Valore di proprietà

Image [ ]

PaletteColorResolutionBits

Gérer la résolution de couleur de palette de vos images GIF avec cette propriété.le nombre de bits utilisés pour représenter les couleurs dans la palette, fournissant un bon contrôlesur la profondeur de la couleur et la qualité de l’image.

public byte PaletteColorResolutionBits { get; set; }

Valore di proprietà

byte

PixelAspectRatio

Gérer le rapport aspect des pixels de l’image GIF avec cette propriété.le rapport de l’aspect pour assurer la réalisation précise et maintenir la fidélité visuelle.

public byte PixelAspectRatio { get; set; }

Valore di proprietà

byte

TransparentColor

Retire la couleur transparente du cadre actif dans l’image GIF.vous permet d’accéder à la couleur spécifique qui a été désignée comme transparentedans le cadre actuellement actif.

public override Color TransparentColor { get; }

Valore di proprietà

Color

XmpData

Gérer les métadonnées XMP avec cette propriété. Que vous récupérez les metadonnes existantesou le mettre à jour avec de nouvelles informations, cette propriété simplifie le processus.vos métadonnées organisées et accessibles, en veillant à ce que vos fichiers contiennent lesdes informations pertinentes dont ils ont besoin.

public override XmpPacketWrapper XmpData { get; set; }

Valore di proprietà

XmpPacketWrapper

Methods

AddBlock(Le blocage)

L’ajout d’un nouveau bloc GIF vous permet de inclure des données supplémentaires dans l’image.Cette méthode vous permet d’ajouter des blocs personnalisés à l’image GIF, qui peutIl contient différents types d’informations.

public void AddBlock(IGifBlock block)

Parameters

block IGifBlock

Le bloc GIF doit être ajouté.

Examples

L’exemple ci-dessous montre comment composer une image GIF animée à partir de blocs individuels Gif.

string dir = "c:\\temp\\";

                                                                                                       // Create a GIF image 100 x 100 px.
                                                                                                       // The first block is fully black by default.
                                                                                                       using (Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock firstBlock = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100))
                                                                                                       using (Aspose.Imaging.FileFormats.Gif.GifImage gifImage = new Aspose.Imaging.FileFormats.Gif.GifImage(firstBlock))
                                                                                                       {
                                                                                                           // The first circle is red
                                                                                                           Aspose.Imaging.Brushes.SolidBrush brush1 = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);

                                                                                                           // The second circle is black
                                                                                                           Aspose.Imaging.Brushes.SolidBrush brush2 = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Black);

                                                                                                           // Gradually inscrease the angle of the red arc shape.
                                                                                                           for (int angle = 10; angle &lt;= 360; angle += 10)
                                                                                                           {
                                                                                                               Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock block = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100);

                                                                                                               Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(block);
                                                                                                               gr.FillPie(brush1, block.Bounds, 0, angle);

                                                                                                               gifImage.AddBlock(block);
                                                                                                           }

                                                                                                           // Gradually inscrease the angle of the black arc and wipe out the red arc.
                                                                                                           for (int angle = 10; angle &lt;= 360; angle += 10)
                                                                                                           {
                                                                                                               Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock block = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100);

                                                                                                               Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(block);
                                                                                                               gr.FillPie(brush2, block.Bounds, 0, angle);
                                                                                                               gr.FillPie(brush1, block.Bounds, angle, 360 - angle);

                                                                                                               gifImage.AddBlock(block);
                                                                                                           }

                                                                                                           gifImage.Save(dir + "animated_radar.gif");
                                                                                                       }

AddPage(RasterImage)

Incorporer une nouvelle page sans fil dans l’image existante, améliorant son contenuCette méthode augmente les collections d’images avec desle contenu, favorisant la créativité et la flexibilité dans la gestion de l’image et de la composition.

public void AddPage(RasterImage page)

Parameters

page RasterImage

La page à ajouter.

Examples

Créer une image GIF multipage en utilisant des images de raster de page unique.

static void Main(string[] args)
                                                                      {
                                                                          // Load frames
                                                                          var frames = LoadFrames("Animation frames").ToArray();

                                                                          // Create GIF image using the first frame
                                                                          using (var image = new GifImage(new GifFrameBlock(frames[0])))
                                                                          {
                                                                              // Add frames to the GIF image using the AddPage method
                                                                              for (var index = 1; index &lt; frames.Length; index++)
                                                                              {
                                                                                  image.AddPage(frames[index]);
                                                                              }

                                                                              // Save GIF image
                                                                              image.Save("Multipage.gif");
                                                                          }
                                                                      }

                                                                      private static IEnumerable<rasterimage> LoadFrames(string directory)
                                                                      {
                                                                          foreach (var filePath in Directory.GetFiles(directory))
                                                                          {
                                                                              yield return (RasterImage)Image.Load(filePath);
                                                                          }
                                                                      }</rasterimage>

Exceptions

ArgumentNullException

page’ is null.

AdjustBrightness(int)

Ajuste la luminosité de l’image selon le paramètre spécifiél’éclairage.Cette méthode modifie de manière uniforme la lumière de la image entière, améliorant ou réduisant la luminance générale pour atteindre l’effet souhaité.

public override void AdjustBrightness(int brightness)

Parameters

brightness int

Il valore della luminosità.

Examples

L’exemple suivant effectue une correction de luminosité d’une image GIF.

string dir = "c:\\temp\\";

                                                                               using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                               {
                                                                                   Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                   // Set the brightness value. The accepted values of brightness are in the range [-255, 255].
                                                                                   gifImage.AdjustBrightness(50);
                                                                                   gifImage.Save(dir + "sample.AdjustBrightness.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                               }

AdjustContrast(Flotte)

Ajuste le contraste de l’image, améliore ou réduit la différence deluminosité entre pixels. Cette méthode modifie la gamme totale de tonalité de l’image,rendre les zones plus sombres plus obscures et les domaines plus lumineux pour améliorer la clarté visuelleet les détails.

public override void AdjustContrast(float contrast)

Parameters

contrast float

valeur de contraste (dans la gamme [-100; 100])

Examples

L’exemple suivant effectue la correction de contraste d’une image GIF.

string dir = "c:\\temp\\";

                                                                             using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                             {
                                                                                 Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                 // Set the contrast value. The accepted values of contrast are in the range [-100f, 100f].
                                                                                 gifImage.AdjustContrast(50f);
                                                                                 gifImage.Save(dir + "sample.AdjustContrast.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                             }

Exceptions

ImageException

Il ne peut pas changer le contraste. Frame index: " + frameIndex

AdjustGamma(Flotte)

Améliorer la qualité de l’image en appliquant la correction gamma.Cette méthode ajuste la couleurgamma de l’image pour obtenir une clarté visuelle optimale. il modifie la valeur gammade chaque pixel, ce qui entraîne une rendition de couleur améliorée et l’apparence d’image globale.

public override void AdjustGamma(float gamma)

Parameters

gamma float

Gamma per il coefficiente dei canali rosso, verde e blu

Examples

L’exemple suivant effectue une correction gamma d’une image GIF.

string dir = "c:\\temp\\";

                                                                          using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                          {
                                                                              Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                              // Set gamma coefficient for red, green and blue channels.
                                                                              gifImage.AdjustGamma(2.5f);
                                                                              gifImage.Save(dir + "sample.AdjustGamma.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                          }

AdjustGamma(Flotte, Flotte et Flotte)

La correction gamma d’une image s’applique à une ajustement non linéaire aux valeurs des pixels,améliorer ou réduire la luminosité en fonction des coefficients spécifiés pour le rouge,vert, et les canaux bleus. Cette méthode aide à finir l’équilibre des couleurs etluminosité de l’image, améliorant son apparence générale et la qualité visuelle.

public override void AdjustGamma(float gammaRed, float gammaGreen, float gammaBlue)

Parameters

gammaRed float

Gamma per il coefficiente del canale rosso

gammaGreen float

Gamma per il coefficiente del canale verde

gammaBlue float

Gamma per il coefficiente del canale blu

Examples

L’exemple suivant effectue une correction gamma d’une image GIF appliquant différents coefficients pour les composants de couleur.

string dir = "c:\\temp\\";

                                                                                                                               using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                                                               {
                                                                                                                                   Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                                                                   // Set individual gamma coefficients for red, green and blue channels.
                                                                                                                                   gifImage.AdjustGamma(1.5f, 2.5f, 3.5f);
                                                                                                                                   gifImage.Save(dir + "sample.AdjustGamma.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                               }

BinarizeBradley(double)

Binarisation d’une image en utilisant l’algorithme de bord adaptatif de Bradley avecL’imagerie intégrale est une méthode de conversion d’une image grayscale en unCet algorithme calcule un seuil local pour chaque pixel basé surl’intensité moyenne des pixels environnants dans une fenêtre spécifiée.ajustement adaptif du seuil en fonction des intensités de pixels locaux, Bradley’sLa méthode est efficace pour traiter les variations de l’éclairage et du contraste à travers l’image.

public override void BinarizeBradley(double brightnessDifference)

Parameters

brightnessDifference double

La differenza di luminosità tra il pixel e la media di una finestra s x s di pixel centrati intorno a questo pixel.

BinarizeFixed(Le byte)

La binarisation d’une image avec un seuil prédéfini convertit une graisse ou une couleurimage dans une image binaire, où chaque pixel est classé comme noir ou blancbasé sur le fait que sa valeur d’intensité dépasse un seuil spécifié.

public override void BinarizeFixed(byte threshold)

Parameters

threshold byte

Se il valore grigio corrispondente di un pixel è superiore al limite, un valore di 255 sarà assegnato a esso, 0 altrimenti.

Examples

L’exemple suivant binarisera une image GIF avec le seuil prédéfini. les images binaires ne contiennent que 2 couleurs - noir et blanc.

string dir = "c:\\temp\\";

                                                                                                                                               using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                                                                               {
                                                                                                                                                   Aspose.Imaging.FileFormats.Gif.GifImage djvuImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                                                                                   // Binarize the image with a threshold value of 127.
                                                                                                                                                   // If a corresponding gray value of a pixel is greater than 127, a value of 255 will be assigned to it, 0 otherwise.
                                                                                                                                                   djvuImage.BinarizeFixed(127);
                                                                                                                                                   djvuImage.Save(dir + "sample.BinarizeFixed.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                               }

BinarizeOtsu()

La binarisation d’une image avec le seuil Otsu est une méthode utilisée pourdéterminer la valeur limite optimale pour la conversion d’une image grayscale en uneL’algorithme de bord Otsu calcule le seuil quiminimise la variation intraclassique des intensités de pixels dans les deux résultatsles classes (avant-grand et en arrière-plan). cette technique est particulièrement utile lorsqueLa valeur limite optimale est inconnue et doit être déterminée sur une base adaptative.sur le histogramme de l’image.

public override void BinarizeOtsu()

Examples

L’exemple suivant binarisera une image GIF avec le seuil Otsu. Les images binaires ne contiennent que 2 couleurs - noir et blanc.

string dir = "c:\\temp\\";

                                                                                                                                        using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                                                                        {
                                                                                                                                            Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                                                                            // Binarize the image with Otsu thresholding.
                                                                                                                                            gifImage.BinarizeOtsu();
                                                                                                                                            gifImage.Save(dir + "sample.BinarizeOtsu.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                        }

ClearBlocks()

Le nettoyage de tous les blocs GIF supprime toutes les données existantes stockées dans l’image.Cette opération récupère efficacement l’image dans un état vide, en supprimant toututilisez cette méthode lorsque vous avez besoin de commencer frais avec unPour créer ou modifier une image GIF.

public void ClearBlocks()

Examples

L’exemple ci-dessous montre comment supprimer tous les blocs d’une image GIF.

using (Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock firstBlock = new Aspose.Imaging.FileFormats.Gif.Blocks.GifFrameBlock(100, 100))
                                                                                 using (Aspose.Imaging.FileFormats.Gif.GifImage gifImage = new Aspose.Imaging.FileFormats.Gif.GifImage(firstBlock))
                                                                                 {
                                                                                     if (gifImage.ActiveFrame != null)
                                                                                     {
                                                                                         System.Console.WriteLine("Active frame size: {0}", gifImage.ActiveFrame.Size);
                                                                                     }
                                                                                     else
                                                                                     {
                                                                                         System.Console.WriteLine("Active frame is not set");
                                                                                     }

                                                                                     System.Console.WriteLine("Clear all the blocks");
                                                                                     gifImage.ClearBlocks();

                                                                                     if (gifImage.ActiveFrame != null)
                                                                                     {
                                                                                         System.Console.WriteLine("Active frame size: {0}", gifImage.ActiveFrame.Size);
                                                                                     }
                                                                                     else
                                                                                     {
                                                                                         System.Console.WriteLine("Active frame is not set");
                                                                                     }
                                                                                 }

                                                                                 // The output looks like this:
                                                                                 // Active frame size: { Width = 100, Height = 100}
                                                                                 // Clear all the blocks
                                                                                 // Active frame is not set

Crop(Rectangle)

Cultiver l’image en utilisant une zone de rectangle spécifiée.Cette opération supprime la partie extérieurepartie de l’image, laissant seulement la région sélectionnée définie par le rectangle.

public override void Crop(Rectangle rectangle)

Parameters

rectangle Rectangle

Il rectangolo .

Examples

L’exemple suivant donne une image GIF. La zone de récolte est spécifiée via Aspose.Imaging.Rectangle.

string dir = "c:\\temp\\";

                                                                                                                   using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                                                   {
                                                                                                                       Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                                                       // Crop the image. The cropping area is the rectangular central area of the image.
                                                                                                                       Aspose.Imaging.Rectangle area = new Aspose.Imaging.Rectangle(gifImage.Width / 4, gifImage.Height / 4, gifImage.Width / 2, gifImage.Height / 2);
                                                                                                                       gifImage.Crop(area);

                                                                                                                       // Save the cropped image to PNG
                                                                                                                       gifImage.Save(dir + "sample.Crop.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                   }

Dither(DitheringMétode, int, IColorPalette)

Appliquer l’image actuelle.Cette procédure améliore la qualité de l’image parRéduire la bandage des couleurs et améliorer les transitions de couleurs, ce qui entraîne une plus doucel’apparence

public override void Dither(DitheringMethod ditheringMethod, int bitsCount, IColorPalette customPalette)

Parameters

ditheringMethod DitheringMethod

Il metodo di diffusione.

bitsCount int

I bit finali contano per il dithering.

customPalette IColorPalette

La paletta personalizzata per il dithering.

Examples

L’exemple suivant charge une image GIF et effectue le débit et le fluid dithering en utilisant différentes profondeurs de palette.

string dir = "c:\\temp\\";

                                                                                                                            using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                                                            {
                                                                                                                                Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                                                                // Perform threshold dithering using 4-bit color palette which contains 16 colors.
                                                                                                                                // The more bits specified the higher quality and the bigger size of the output image.
                                                                                                                                // Note that only 1-bit, 4-bit and 8-bit palettes are supported at the moment.
                                                                                                                                gifImage.Dither(Aspose.Imaging.DitheringMethod.ThresholdDithering, 4, null);

                                                                                                                                gifImage.Save(dir + "sample.ThresholdDithering4.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                            }

                                                                                                                            using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                                                            {
                                                                                                                                Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                                                                // Perform floyd dithering using 1-bit color palette which contains only 2 colors - black and white.
                                                                                                                                // The more bits specified the higher quality and the bigger size of the output image.
                                                                                                                                // Note that only 1-bit, 4-bit and 8-bit palettes are supported at the moment.
                                                                                                                                gifImage.Dither(Aspose.Imaging.DitheringMethod.FloydSteinbergDithering, 1, null);

                                                                                                                                gifImage.Save(dir + "sample.FloydSteinbergDithering1.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                            }

Filter(Rectangle, FilterOptionsBase)

Appliquer un filtre spécifique à la zone désignée de l’image, améliorant sa visionla qualité ou modifier son apparence comme souhaité.Cette méthode procède sélectivementpixels dans le rectangle défini, permettant d’effectuer des ajustements ciblésconservation de l’intégrité des données d’image environnantes.

public override void Filter(Rectangle rectangle, FilterOptionsBase options)

Parameters

rectangle Rectangle

Il rectangolo .

options FilterOptionsBase

Le opzioni .

Examples

L’exemple suivant applique différents types de filtres à une image GIF.

string dir = "c:\\temp\\";

                                                                                 using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                 {
                                                                                     Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                     // Apply a median filter with a rectangle size of 5 to the entire image.
                                                                                     gifImage.Filter(gifImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.MedianFilterOptions(5));
                                                                                     gifImage.Save(dir + "sample.MedianFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                 }

                                                                                 using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                 {
                                                                                     Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                     // Apply a bilateral smoothing filter with a kernel size of 5 to the entire image.
                                                                                     gifImage.Filter(gifImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.BilateralSmoothingFilterOptions(5));
                                                                                     gifImage.Save(dir + "sample.BilateralSmoothingFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                 }

                                                                                 using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                 {
                                                                                     Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                     // Apply a Gaussian blur filter with a radius of 5 and a sigma value of 4.0 to the entire image.
                                                                                     gifImage.Filter(gifImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.GaussianBlurFilterOptions(5, 4.0));
                                                                                     gifImage.Save(dir + "sample.GaussianBlurFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                 }

                                                                                 using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                 {
                                                                                     Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                     // Apply a Gauss-Wiener filter with a radius of 5 and a smooth value of 4.0 to the entire image.
                                                                                     gifImage.Filter(gifImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.GaussWienerFilterOptions(5, 4.0));
                                                                                     gifImage.Save(dir + "sample.GaussWienerFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                 }

                                                                                 using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                 {
                                                                                     Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                     // Apply a motion wiener filter with a length of 5, a smooth value of 4.0 and an angle of 90.0 degrees to the entire image.
                                                                                     gifImage.Filter(gifImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.MotionWienerFilterOptions(10, 1.0, 90.0));
                                                                                     gifImage.Save(dir + "sample.MotionWienerFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                 }

                                                                                 using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                 {
                                                                                     Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                     // Apply a sharpen filter with a kernel size of 5 and a sigma value of 4.0 to the entire image.
                                                                                     gifImage.Filter(gifImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.SharpenFilterOptions(5, 4.0));
                                                                                     gifImage.Save(dir + "sample.SharpenFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                 }

GetOriginalOptions()

Récupérer les options basées sur les paramètres de fichier originaux, essentielles pour maintenir la fidélitéet cohérence dans le traitement et la manipulation de l’image.Cette méthode permet desl’intégration des paramètres spécifiques aux fichiers dans les opérations ultérieures, assurantrendition précise et adhésion aux caractéristiques inhérentes de l’image.Questo può essere utile per mantenere la profondità del bit e altri parametri dell’immagine originale invariati.Ad esempio, se caricamo un’immagine PNG in bianco e nero con 1 bit per pixel e lo salviamo utilizzando ilAspose.Imaging.DataStreamSupporter.Save(System.String) méthode, l’image PNG de sortie avec 8 bits par pixel sera produite.Per evitare e salvare l’immagine PNG con 1 bit per pixel, utilizzare questo metodo per ottenere le opzioni di risparmio corrispondenti e passare loroà la méthode Aspose.Imaging.Image.Save(System.String,_Wl17. ImageOptionsBase) comme deuxième paramètre.

public override ImageOptionsBase GetOriginalOptions()

Returns

ImageOptionsBase

Le opzioni basate sulle impostazioni del file originale.

Grayscale()

La transformation d’une image à sa représentation graisseuse convertit la couleurimage dans une version grise en supprimant les informations de couleur tout en conservantluminosité. ce processus simplifie l’image à des ombres de gris, ce qui le rend adaptépour diverses applications telles que l’impression, le traitement des documents et la grayscaled’analyse

public override void Grayscale()

Examples

L’exemple suivant transforme une image GIF colorée en sa représentation grayscale. Les images graiscales sont composées exclusivement de nuances de gris et ne portent que des informations d’intensité.

string dir = "c:\\temp\\";

                                                                                                                                                                                                  using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                                                                                                                                  {
                                                                                                                                                                                                      Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                                                                                                                                      gifImage.Grayscale();
                                                                                                                                                                                                      gifImage.Save(dir + "sample.Grayscale.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                                                                                  }

InsertBlock(Étiquette : IGIFBlock)

L’insertion d’un nouveau bloc GIF vous permet de ajouter des données personnalisées à une position spécifiqueCette méthode vous permet de placer les blocs personnalisés à un endroit souhaitélocalisation dans l’image GIF, offrant une flexibilité pour organiser et structurer ladonnées d’image.

public void InsertBlock(int index, IGifBlock block)

Parameters

index int

L’élément basé sur zéro, sur lequel le bloc sera inséré.

block IGifBlock

Le bloc GIF doit être ajouté.

OnPaletteChanged(L’ICOLOR, L’ICOLOR)

Chiamato quando la paletta è cambiata.

protected override void OnPaletteChanged(IColorPalette oldPalette, IColorPalette newPalette)

Parameters

oldPalette IColorPalette

La vecchia paletta.

newPalette IColorPalette

La nuova paletta.

OnPaletteChanging(L’ICOLOR, L’ICOLOR)

Si chiama quando la paletta sta cambiando.

protected override void OnPaletteChanging(IColorPalette oldPalette, IColorPalette newPalette)

Parameters

oldPalette IColorPalette

La vecchia paletta.

newPalette IColorPalette

La nuova paletta.

OrderBlocks()

L’ordre des blocs GIF selon la spécification Gif assure un Gifi appropriéla mise en place et la conformité avec la norme. ce processus implique l’organisation de lales blocs dans la bonne séquence telle que définie par la spécification.peut impliquer la suppression de certaines instances Aspose.Imaging.FileFormats.Gif.Blocks.DifGraphicsControlBlock quine sont pas nécessaires pour le layout final. en adhérant à la spécification GIF, leL’image résultante sera correctement structurée et compatible avec la visualisation GIFles applications.

public void OrderBlocks()

RemoveBlock(Le blocage)

La suppression d’un bloc GIF supprime des données spécifiques de l’image, offrant la possibilité denettoyer ou modifier la structure de l’image.Cette méthode vous permet de supprimer les inconvénientsou des blocs inutiles, optimisant l’image GIF pour un stockage efficace.fonctionnalité pour éliminer les informations obsolètes de l’image tout en conservantleur intégrité et leur qualité.

public void RemoveBlock(IGifBlock block)

Parameters

block IGifBlock

Le bloc à supprimer.

Remarks

Remarque : n’oubliez pas de déposer le bloc si vous ne l’ajoutez pas à un autre GifImage.

Resize(int, int, resizeType)

Récupérer ce Aspose.Imaging.Image instance.

public override void Resize(int newWidth, int newHeight, ResizeType resizeType)

Parameters

newWidth int

La nuova larghezza.

newHeight int

La nuova altezza.

resizeType ResizeType

Il tipo di ritorno.

Examples

Cet exemple enregistre une image GIF et la résise en utilisant diverses méthodes de résisation.

string dir = "c:\\temp\\";

                                                                                        using (Aspose.Imaging.FileFormats.Gif.GifImage image = (Aspose.Imaging.FileFormats.Gif.GifImage)Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                        {
                                                                                            // Scale up by 2 times using Nearest Neighbour resampling.
                                                                                            image.Resize(image.Width* 2, image.Height* 2, Aspose.Imaging.ResizeType.NearestNeighbourResample);
                                                                                            image.Save(dir + "upsample.nearestneighbour.gif");
                                                                                        }

                                                                                        using (Aspose.Imaging.FileFormats.Gif.GifImage image = (Aspose.Imaging.FileFormats.Gif.GifImage)Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                        {
                                                                                            // Scale down by 2 times using Nearest Neighbour resampling.
                                                                                            image.Resize(image.Width / 2, image.Height / 2, Aspose.Imaging.ResizeType.NearestNeighbourResample);
                                                                                            image.Save(dir + "downsample.nearestneighbour.gif");
                                                                                        }

                                                                                        using (Aspose.Imaging.FileFormats.Gif.GifImage image = (Aspose.Imaging.FileFormats.Gif.GifImage)Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                        {
                                                                                            // Scale up by 2 times using Bilinear resampling.
                                                                                            image.Resize(image.Width* 2, image.Height* 2, Aspose.Imaging.ResizeType.BilinearResample);
                                                                                            image.Save(dir + "upsample.bilinear.gif");
                                                                                        }

                                                                                        using (Aspose.Imaging.FileFormats.Gif.GifImage image = (Aspose.Imaging.FileFormats.Gif.GifImage)Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                        {
                                                                                            // Scale down by 2 times using Bilinear resampling.
                                                                                            image.Resize(image.Width / 2, image.Height / 2, Aspose.Imaging.ResizeType.BilinearResample);
                                                                                            image.Save(dir + "downsample.bilinear.gif");
                                                                                        }

Resize(int, int, imageResizeSettings)

Récupérer ce Aspose.Imaging.Image instance.

public override void Resize(int newWidth, int newHeight, ImageResizeSettings settings)

Parameters

newWidth int

La nuova larghezza.

newHeight int

La nuova altezza.

settings ImageResizeSettings

Les réglages .

Examples

Cet exemple charge une image GIF et la réaffiche en utilisant divers paramètres de récitation.

string dir = "c:\\temp\\";

                                                                                         Aspose.Imaging.ImageResizeSettings resizeSettings = new Aspose.Imaging.ImageResizeSettings();

                                                                                         // The adaptive algorithm based on weighted and blended rational function and lanczos3 interpolation.
                                                                                         resizeSettings.Mode = Aspose.Imaging.ResizeType.AdaptiveResample;

                                                                                         // The small rectangular filter
                                                                                         resizeSettings.FilterType = Aspose.Imaging.ImageFilterType.SmallRectangular;

                                                                                         // The number of colors in the palette.
                                                                                         resizeSettings.EntriesCount = 256;

                                                                                         // The color quantization is not used
                                                                                         resizeSettings.ColorQuantizationMethod = ColorQuantizationMethod.None;

                                                                                         // The euclidian method
                                                                                         resizeSettings.ColorCompareMethod = ColorCompareMethod.Euclidian;

                                                                                         using (Aspose.Imaging.Image image = (Aspose.Imaging.Image)Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                         {
                                                                                             Aspose.Imaging.FileFormats.Gif.GifImage gifImage = (Aspose.Imaging.FileFormats.Gif.GifImage)image;

                                                                                             // Scale down by 2 times using adaptive resampling.
                                                                                             gifImage.Resize(image.Width / 2, image.Height / 2, resizeSettings);

                                                                                             // Save to PNG
                                                                                             gifImage.Save(dir + "downsample.adaptive.png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                         }

ResizeFullFrame(int, int, resizeType)

Récupérer l’image en tenant compte des cadres complets pour chaque page dans unGIF, ce qui empêche ainsi les objets potentiels de apparaître.pour maintenir l’intégrité et la qualité de l’image, en particulier lorsqu’il s’agit deGIF animés ou séquences de cadres.

public void ResizeFullFrame(int newWidth, int newHeight, ResizeType resizeType)

Parameters

newWidth int

La nuova larghezza.

newHeight int

La nuova altezza.

resizeType ResizeType

Il tipo di ritorno.

ResizeProportional(int, int, resizeType)

La résistance proportionnelle maintient le ratio aspect de l’image tout en ajustant sa taille, pour s’assurer qu’elle ne paraît pas étendue ou déformée.Cette méthode résiste l’image de manière proporcionelle, en évaluant la largeur et la hauteur par le même facteur.La résisance proporcionale ressuscite chaque cadre selon le rapport de newWidth’/width et newHeight’ / height.

public void ResizeProportional(int newWidth, int newHeight, ResizeType resizeType)

Parameters

newWidth int

La nuova larghezza.

newHeight int

La nuova altezza.

resizeType ResizeType

Il tipo di ritorno.

Rotate(fleat, bool, couleur)

Cette méthode tourne l’image autour de son point central. en spécifiant la rotationangle, vous pouvez tourner l’image en mode horloge ou contre-heure pour atteindre lecette rotation aide à ajuster la présentation de l’image oul’alignement sans distorsion de son contenu.

public override void Rotate(float angle, bool resizeProportionally, Color backgroundColor)

Parameters

angle float

L’angolo di rotazione in gradi. valori positivi gireranno in orologio.

resizeProportionally bool

s’il est configuré à ’true’ vous aurez la taille de votre image modifiée en fonction des projections rectangles (points corniers) rotés dans d’autres cas qui laissent les dimensions non touchées et seulementinterne contenu de l’image sont rotées.

backgroundColor Color

Il colore del background.

RotateFlip(RotateFlipType)

Réalisez la rotation, le flipping ou les deux sur le cadre actif exclusivement.applique les transformations uniquement au cadre actuellement actif de l’image,préserver l’intégrité des autres cadres dans la séquence.

public override void RotateFlip(RotateFlipType rotateFlipType)

Parameters

rotateFlipType RotateFlipType

Il tipo di flip rotato.

Examples

Cet exemple charge une image GIF, la tourne à 90 degrés d’horloge et flique optionnellement l’image horizontalement et/ou verticalement.

string dir = "c:\\temp\\";

                                                                                                                                             Aspose.Imaging.RotateFlipType[] rotateFlipTypes = new Aspose.Imaging.RotateFlipType[]
                                                                                                                                             {
                                                                                                                                                 Aspose.Imaging.RotateFlipType.Rotate90FlipNone,
                                                                                                                                                 Aspose.Imaging.RotateFlipType.Rotate90FlipX,
                                                                                                                                                 Aspose.Imaging.RotateFlipType.Rotate90FlipXY,
                                                                                                                                                 Aspose.Imaging.RotateFlipType.Rotate90FlipY,
                                                                                                                                             };

                                                                                                                                             foreach (Aspose.Imaging.RotateFlipType rotateFlipType in rotateFlipTypes)
                                                                                                                                             {
                                                                                                                                                 // Rotate, flip and save to the output file.
                                                                                                                                                 using (Aspose.Imaging.FileFormats.Gif.GifImage image = (Aspose.Imaging.FileFormats.Gif.GifImage)Aspose.Imaging.Image.Load(dir + "sample.gif"))
                                                                                                                                                 {
                                                                                                                                                     image.RotateFlip(rotateFlipType);
                                                                                                                                                     image.Save(dir + "sample." + rotateFlipType + ".png", new Aspose.Imaging.ImageOptions.PngOptions());
                                                                                                                                                 }
                                                                                                                                             }

SaveData(Stream)

Économisez les données.

protected override void SaveData(Stream stream)

Parameters

stream Stream

Le flux pour sauvegarder les données.

SetFrameTime(Mise à jour)

Ajuste la durée de chaque cadre en milliseconds, assurant une timing cohérentedans toute la séquence d’image.Cette méthode définit uniformément le temps de l’affichagechaque cadre, permettant un contrôle précis de la vitesse d’animation.La modification de cette valeur rétablira le retard pour tous les cadres.

public void SetFrameTime(ushort time)

Parameters

time ushort

La durée du cadre en millisecondes.

UpdateDimensions(int, int)

Aggiornare le dimensioni dell’immagine.

protected override void UpdateDimensions(int newWidth, int newHeight)

Parameters

newWidth int

La nuova larghezza dell’immagine.

newHeight int

L’altezza della nuova immagine.

 Français