Class GifImage
Nom dels espais: Aspose.Imaging.FileFormats.Gif Assemblea: Aspose.Imaging.dll (25.4.0)
L’API per al format d’intercanvi gràfic (GIF) proporcionadesenvolupadors amb eines versàtils per al tractament d’imatges de rastres comprimits iGIFs animats. Ofereix característiques com el tractament de metadades XMP, paleta de colorsConfiguracions, fons i control de color transparent, configuracions d’opacitat, ressec,crop, aplicació de filtres, correccions de gamma, ajustament de contrast, grayscaletransformació, i la conversió a altres formats. aquesta API permet sense segellmanipulació i millora de les imatges GIF per a una àmplia gamma d’aplicacions.
[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
Membres heretats
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
Exportació de part d’animació a partir de la imatge GIF basada en l’interval 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);
}
Aquest exemple mostra com crear una imatge GIF i salvar-la a un fitxer.
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");
}
}
Creació d’imatges GIF de múltiples pàgines utilitzant imatges de raster de pàgina única.
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 i IColorPalette)
Iniciar un nou objecte Aspose.Imaging.FileFormats.Gif. GifImage amb paràmetres especificats per a laprimer quadre i paleta global. començar a gestionar les imatges GIF ràpidament, assegurantrepresentació exacta amb ajustaments personalitzables per a resultats òptims.
public GifImage(GifFrameBlock firstFrame, IColorPalette globalPalette)
Parameters
firstFrame
GifFrameBlock
El primer quadre per iniciar la imatge gif amb.
globalPalette
IColorPalette
Nota: si tant firstFrame’ i
Examples
Aquest exemple mostra com crear una imatge GIF amb una paleta personalitzada i salvar-la a un fitxer.
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
El firstFrame’ no pot ser nul
El firstFrame’ ja pertany a alguna altra imatge.
La globalPalette’ especificada ha de contenir el nombre d’entrades igual a la potència de 2.
GifImage(GifFrameBlock)
Creació d’imatges GIF esdevé sense esforç amb el Aspose.Imaging.FileFormats.Gif.Constructor. amb només el primer paràmetre Frame, entra en un món de dinàmicaComunicació visual.
public GifImage(GifFrameBlock firstFrame)
Parameters
firstFrame
GifFrameBlock
El primer quadre per iniciar la imatge gif amb.
Examples
Aquest exemple mostra com crear una imatge GIF i salvar-la a un fitxer.
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 següent mostra com compondre una imatge de GIF animada des de blocs individuals.
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 <= 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 <= 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
El firstFrame’ no pot ser nul
El firstFrame’ ja pertany a alguna altra imatge.
La paleta especificada ha de contenir el nombre d’entrades igual a la potència de 2.El mida mínim de la palet és 2, el màxim és 256.
GifImage(GifFrameBlock, IColorPalette, bool, bite, byte, buol)
Començar sense esforç amb el constructor Aspose.Imaging.FileFormats.Gif.mètode senzill, es pot immersar en la creació de gifs animats amb facilitat.firstFrame, globalPalette, paletteColorResolution, aspectRatio, i altresParàmetres, i estàs preparat per portar les teves visuals a la vida.
public GifImage(GifFrameBlock firstFrame, IColorPalette globalPalette, bool isPaletteSorted, byte paletteColorResolution, byte paletteBackgroundColorIndex, byte aspectRatio, bool hasTrailer)
Parameters
firstFrame
GifFrameBlock
El primer quadre per iniciar la imatge gif amb.
globalPalette
IColorPalette
Nota: si tant firstFrame’ i
isPaletteSorted
bool
Nota: s’utilitza el paràmetre quan globalPalette" no és nul.
paletteColorResolution
byte
Nota el paràmetre s’utilitza quan globalPalette’ no és nul.
paletteBackgroundColorIndex
byte
L’índex de color de fons paleta.
aspectRatio
byte
La proporció dels aspectes.
hasTrailer
bool
si s’estableix a ’true’ l’imatge gif té el tràiler d’una altra manera no hi ha cap trailer escrit al final de la ràdio.
Exceptions
El firstFrame’ no pot ser nul
El firstFrame’ ja pertany a alguna altra imatge.
La globalPalette’ especificada ha de contenir el nombre d’entrades igual a la potència de 2.
Properties
ActiveFrame
Gestionar i manipular els quadres amb aquesta propietat, permetent una navegació suau iModificació del marc actiu dins de la imatge GIF.
public GifFrameBlock ActiveFrame { get; set; }
Valor de la propietat
Examples
L’exemple següent mostra com eliminar tots els blocs d’una imatge 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
Gestionar el color de fons de la imatge GIF amb aquesta propietat.Recuperar el color de fons per garantir la consistència i millorar l’aportació visual.
public override Color BackgroundColor { get; set; }
Valor de la propietat
BackgroundColorIndex
Controlar l’índex de color de fons de la imatge GIF utilitzant aquesta propietat.Recuperar l’índex per mantenir la consistència o obtenir els efectes visuals desitjats.
public byte BackgroundColorIndex { get; set; }
Valor de la propietat
Blocks
Gaudeix d’accés als blocs GIF sense fer-ho amb aquesta propietat, facilitant fàcilmentRecuperació i manipulació de les estructures de dades subjacents de la imatge.
public IGifBlock[] Blocks { get; }
Valor de la propietat
IGifBlock []
FileFormat
Recuperar el format de fitxers sense esforç amb aquesta propietat. és la seva fontper identificar el format dels vostres fitxers. integrats sense cap dubte en el vostre flux de treball,Proporciona informació vital sense cap engany.
public override FileFormat FileFormat { get; }
Valor de la propietat
HasBackgroundColor
Aquesta propietat determina si la imatge GIF conté un color de fons.veritat, indica que la imatge inclou un color de fons.
public override bool HasBackgroundColor { get; }
Valor de la propietat
HasTrailer
Gestionar la presència d’un tràiler en els seus fitxers GIF amb aquesta propietat.necessitat de comprovar si un tràiler existeix o s’estableix la seva presència, aquesta propietat simplifica laMantenir els seus fitxers GIF estructurats i conformes amb aquesta característica intuïtiva.
public bool HasTrailer { get; set; }
Valor de la propietat
HasTransparentColor
Determinar si el marc actiu de la imatge GIF inclou un color transparent.Aquesta propietat proporciona una manera convenient de comprovar la transparència dins de la imatge.
public override bool HasTransparentColor { get; set; }
Valor de la propietat
ImageOpacity
Retirar l’opacitat del marc actiu dins de la imatge, oferint una visióla seva transparència. aquesta propietat és particularment útil per a entendre elgrau de transparència o opacitat del marc actiu a la imatge.
public override float ImageOpacity { get; }
Valor de la propietat
IsInterlaced
Determina si la imatge és interligada, afectant la seva pantalla durant el càrrega.La propietat ofereix una visió del comportament de rendiment de la imatge, essencial perOptimitzar les estratègies de càrrega i millorar l’experiència general de visualització.
public bool IsInterlaced { get; }
Valor de la propietat
IsPaletteSorted
Controlar la classificació de la paleta en les teves imatges GIF utilitzant aquesta propietat.has de comprovar si la paleta està ordenada o s’estableix el comportament de ordenament, aquestLa propietat proporciona una manera senzilla de gestionar l’organització paleta en la sevaEls arxius GIF.
public bool IsPaletteSorted { get; set; }
Valor de la propietat
LoopsCount
Retirar el compte de llop sense esforç amb aquesta propietat. si la seva imatge GIF inclouLa informació de la ronda, aquesta propietat li dóna accés ràpid al compte de l’arrondament, permetentper a gestionar sense cap mena el comportament en els seus fitxers GIF.
public int LoopsCount { get; set; }
Valor de la propietat
PageCount
Retirar el nombre total de pàgines contingudes dins de la imatge amb aquestPropietat senzilla. ideal per avaluar ràpidament l’abast del contingut de la imatge.
public override int PageCount { get; }
Valor de la propietat
Pages
Obtenir accés a les pàgines dins de la imatge a través d’aquesta propietat convenient,Permet la navegació i la manipulació de pàgines individuals com sigui necessari.
public override Image[] Pages { get; }
Valor de la propietat
Image []
PaletteColorResolutionBits
Gestiona la resolució de color palet de les teves imatges GIF amb aquesta propietat.el nombre de bits utilitzats per representar els colors en la paleta, proporcionant un bon controlsobre la profunditat de color i la qualitat de la imatge.
public byte PaletteColorResolutionBits { get; set; }
Valor de la propietat
PixelAspectRatio
Gestió de la proporció d’aspecte de píxels de l’imatge GIF amb aquesta propietat.La proporció d’aspecte per assegurar una renderització exacta i mantenir la fidelitat visual.
public byte PixelAspectRatio { get; set; }
Valor de la propietat
TransparentColor
Retirar el color transparent del marc actiu en la imatge GIF.Permet accés al color específic que ha estat designat com a transparentdins del marc actual.
public override Color TransparentColor { get; }
Valor de la propietat
XmpData
Gestió de metadades XMP amb aquesta propietat. si vostè està recuperant metades existentso actualitzar-lo amb nova informació, aquesta propietat simplifica el procés.les seves metadades organitzades i accessibles, assegurant que els seus fitxers continguininformació pertinent que necessiten.
public override XmpPacketWrapper XmpData { get; set; }
Valor de la propietat
Methods
AddBlock(El bloc)
Afegir un nou bloc GIF li permet incloure dades addicionals dins de la imatge.Aquest mètode li permet afegir blocs personalitzats a la imatge GIF, que potConté diversos tipus d’informació.
public void AddBlock(IGifBlock block)
Parameters
block
IGifBlock
El bloc GIF per afegir.
Examples
L’exemple següent mostra com compondre una imatge de GIF animada des de blocs individuals.
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 <= 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 <= 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)
Incorporar una nova pàgina sense segell a la imatge existent, millorant el seu contingutAquest mètode augmenta les col·leccions d’imatges amb mésContingut, fomentant la creativitat i la flexibilitat en la gestió d’imatge i composició.
public void AddPage(RasterImage page)
Parameters
page
RasterImage
La pàgina per afegir.
Examples
Creació d’imatges GIF de múltiples pàgines utilitzant imatges de raster de pàgina única.
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>
Exceptions
page’ is null.
AdjustBrightness(Int)
Ajusta la brillantor de la imatge segons el paràmetre de brillància especificat
public override void AdjustBrightness(int brightness)
Parameters
brightness
int
Valor de la llum.
Examples
L’exemple següent realitza la correcció de brillantor d’una imatge 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(Float)
Ajustar el contrast de la imatge, augmentant o reduint la diferència enbrillantor entre píxels. aquest mètode modifica el rang total de tons de la imatge,Fer que les àrees fosques siguin més foscos i les zones més brillants s’allunyen per millorar la claredat visuali els detalls.
public override void AdjustContrast(float contrast)
Parameters
contrast
float
Valor de contrast (en rang [-100; 100])
Examples
L’exemple següent realitza la correcció de contrast d’una imatge 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
No es pot canviar el contrast. Índex de frame: " + frameIndex
AdjustGamma(Float)
Millorar la qualitat de la imatge aplicant la correcció gamma. aquest mètode ajusta el colorgamma de la imatge per aconseguir la claredat visual òptima.Modifica el valor gammade cada píxel, el que resulta en una millor rendició de colors i l’aparença general de la imatge.
public override void AdjustGamma(float gamma)
Parameters
gamma
float
Gamma per a canals vermell, verd i blau coeficient
Examples
L’exemple següent realitza la correcció gamma d’una imatge 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(Float, float i flot)
La correcció gamma d’una imatge s’aplica a un ajust no lineal als valors de píxels,Millorar o reduir la brillantor basada en els coeficients especificats per al vermell,verd, i canals blaus. aquest mètode ajuda a finalitzar l’equilibri de colors iIl·luminació de la imatge, millora la seva aparença general i qualitat visual.
public override void AdjustGamma(float gammaRed, float gammaGreen, float gammaBlue)
Parameters
gammaRed
float
Gamma per al coeficient de canals vermells
gammaGreen
float
Gamma per al coeficient de canals verds
gammaBlue
float
Gamma per al coeficient de canal blau
Examples
L’exemple següent realitza la correcció gamma d’una imatge GIF aplicant diferents coeficients per als components de color.
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(doble)
Binarització d’una imatge utilitzant l’algoritme de límit adaptatiu de Bradley ambEl límit d’imatge integral és un mètode per convertir una imatge de graix a unaAquest algoritme calcula un límit local per a cada píxel basat enla intensitat mitjana dels píxels al voltant dins d’una finestra especificada.ajustament adaptatiu del límit basat en les intensitats de píxels locals, BradleyEl mètode és eficaç en gestionar variacions en la il·luminació i el contrast a través de la imatge.
public override void BinarizeBradley(double brightnessDifference)
Parameters
brightnessDifference
double
La diferència de brillantor entre el pixel i la mitjana d’una finestra s x s de píxels centrat al voltant d’aquest píxel.
BinarizeFixed(El byte)
La binarització d’una imatge amb un límit predefinit converteix una escala gris o colorImatge en una imatge binària, on cada píxel és classificat com a negre o blancen funció de si el seu valor d’intensitat supera un límit especificat.
public override void BinarizeFixed(byte threshold)
Parameters
threshold
byte
Si el valor gris corresponent d’un píxel és més gran que el límit, se li assignarà un valor de 255, 0 en cas contrari.
Examples
L’exemple següent binaritza una imatge GIF amb el límit predefinit. Imatges binaris contenen només 2 colors - negre i 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()
Binarització d’una imatge amb el límit Otsu és un mètode que s’utilitza perdeterminar el valor límit òptim per a la conversió d’una imatge en unaL’algoritme d’ampliació de l’Otsu calcula el límit queminimitza la variació intra-classe de les intensitats de píxels en els dos resultatsclasses (avantgrau i fons). aquesta tècnica és particularment útil quanEl valor límit òptim és desconegut i s’ha de determinar adaptivament.sobre l’histograma de la imatge.
public override void BinarizeOtsu()
Examples
L’exemple següent binaritza una imatge GIF amb el límit Otsu. imatges binàries contenen només 2 colors - negre i 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()
La neteja de tots els blocs GIF elimina totes les dades existents emmagatzemades dins de la imatge.Aquesta operació de manera efectiva restaura la imatge en un estat buit, eliminant qualsevolutilitzar aquest mètode quan cal començar fresc amb una netejaPer crear o modificar una imatge GIF.
public void ClearBlocks()
Examples
L’exemple següent mostra com eliminar tots els blocs d’una imatge 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)
Crea la imatge utilitzant una àrea rectangular especificada. aquesta operació elimina l’exteriorpart de la imatge, deixant només la regió seleccionada definida pel rectangle.
public override void Crop(Rectangle rectangle)
Parameters
rectangle
Rectangle
El rectangle
Examples
L’exemple següent cultiva una imatge GIF. La zona de cultiu s’especifica a través de 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(DitheringMetode, int, IColorPalette)
Aplicar-se a l’imatge actual. Aquest procés millora la qualitat de la imatge perreduir la bandera de colors i millorar les transicions de color, que resulten en una més suaul’aparença
public override void Dither(DitheringMethod ditheringMethod, int bitsCount, IColorPalette customPalette)
Parameters
ditheringMethod
DitheringMethod
El mètode de difusió.
bitsCount
int
Els bits finals compten per a la difusió.
customPalette
IColorPalette
El costum de la paleta per a la difusió.
Examples
L’exemple següent carrega una imatge GIF i realitza la difusió del límit i el fluid mitjançant diferents profunditats de la paleta.
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)
Apliqueu un filtre específic a l’àrea designada de la imatge, millorant la seva visióla qualitat o canviar l’aparença com es desitja. aquest mètode procedeix selectivamentpixels dins del rectangle definit, que permeten realitzar ajustaments objectiusmantenir la integritat de les dades d’imatge que envolten.
public override void Filter(Rectangle rectangle, FilterOptionsBase options)
Parameters
rectangle
Rectangle
El rectangle
options
FilterOptionsBase
Les opcions.
Examples
L’exemple següent aplica diversos tipus de filtres a una imatge 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()
Recuperar les opcions basades en la configuració original de fitxers, crucial per mantenir la fidelitati coherència en el processament d’imatge i la manipulació. aquest mètode permet sense segellla integració de paràmetres específics de fitxers en les operacions posteriors, assegurantrendició exacta i adhesió a les característiques inherents de la imatge.Això pot ser útil per mantenir la profunditat de bit i altres paràmetres de la imatge original sense canvis.Per exemple, si carregem una imatge PNG de blanc i negre amb 1 bit per píxel i llavors l’emmagatzememàvem utilitzant elAspose.Imaging.DataStreamSupporter.Save(System.String) mètode, la imatge PNG de sortida amb 8 bits per píxel es produirà.Per evitar-ho i salvar la imatge PNG amb 1 bit per píxel, utilitzeu aquest mètode per obtenir les opcions d’estalvi corresponents i passar-losEl mètode Aspose.Imaging.Image.Save (System.String,_Wl17.ImagineOptionsBase) és el segon paràmetre.
public override ImageOptionsBase GetOriginalOptions()
Returns
Les opcions basades en la configuració original del fitxer.
Grayscale()
La transformació d’una imatge a la seva representació griscal converteix el colorImatge en una versió d’escala groga per eliminar la informació de color mentre conservaAquest procés simplifica la imatge a les ombres de gris, fent-la adequadaper a diverses aplicacions com la impressió, el processament de documents i el grayscalei l’anàlisi
public override void Grayscale()
Examples
L’exemple següent transforma una imatge de GIF colorada en la seva representació de grais. Les imatges de Grais es componen exclusivament d’ombres de gris i porten només informació d’intensitat.
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(Títol: IGIFBlock)
La inserció d’un nou bloc GIF li permet afegir dades personalitzades en una posició específicaDins de la imatge. aquest mètode li permet col·locar blocs personalitzats en un desitjatubicació en la imatge GIF, proporcionant flexibilitat en l’organització i estructuració de ladades de la imatge.
public void InsertBlock(int index, IGifBlock block)
Parameters
index
int
El element basat en zero, en el qual s’insereix el bloc.
block
IGifBlock
El bloc GIF per afegir.
OnPaletteChanged(Col·lecció IColorPalette)
Es diu quan es canvia la paleta.
protected override void OnPaletteChanged(IColorPalette oldPalette, IColorPalette newPalette)
Parameters
oldPalette
IColorPalette
La vella paleta.
newPalette
IColorPalette
La nova paleta.
OnPaletteChanging(Col·lecció IColorPalette)
Es diu quan la paleta està canviant.
protected override void OnPaletteChanging(IColorPalette oldPalette, IColorPalette newPalette)
Parameters
oldPalette
IColorPalette
La vella paleta.
newPalette
IColorPalette
La nova paleta.
OrderBlocks()
Ordenar els blocs de GIF d’acord amb la especificació de l’GIF assegura que el gIF és adequatel disseny i el compliment de la norma. Aquest procés implica l’organització delblocs en la seqüència correcta tal com es defineix per la especificació.pot implicar la eliminació d’alguns Aspose.Imaging.FileFormats.Gif.Blocks.CONTROLBlock instàncies queno són necessaris per al disseny final.D’acord amb la especificació GIF, elLa imatge resultant serà correctament estructurada i compatible amb la visualització GIFLes aplicacions.
public void OrderBlocks()
RemoveBlock(El bloc)
Eliminació d’un bloc GIF elimina dades específiques de l’imatge, oferint la capacitat denetejar o modificar l’estructura de la imatge. aquest mètode li permet eliminar els no desitjatso blocs innecessaris, optimitzant la imatge GIF per a un emmagatzematge eficient.Funcionalitat per eliminar la informació obsoleta de la imatge mentre conservala seva integritat i qualitat.
public void RemoveBlock(IGifBlock block)
Parameters
block
IGifBlock
El bloc per eliminar.
Remarks
Nota: no oblidis Disposar el bloc si no l’afegiràs a algun altre GifImage.
Resize(Int, int, ResizeTyp)
Reset aquest Aspose.Imaging.Image instància.
public override void Resize(int newWidth, int newHeight, ResizeType resizeType)
Parameters
newWidth
int
La nova amplada.
newHeight
int
La nova alçada.
resizeType
ResizeType
El tipus de residus.
Examples
Aquest exemple carrega una imatge GIF i la resisa utilitzant diversos mètodes de resissió.
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)
Reset aquest Aspose.Imaging.Image instància.
public override void Resize(int newWidth, int newHeight, ImageResizeSettings settings)
Parameters
newWidth
int
La nova amplada.
newHeight
int
La nova alçada.
settings
ImageResizeSettings
Els establiments .
Examples
Aquest exemple carrega una imatge GIF i la resisa utilitzant diverses configuracions de resissió.
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, ResizeTyp)
Recuperar la imatge tenint en compte els quadres complets per a cada pàgina en unGIF, per tant, impedeix l’aparició de possibles artefactes. aquest mètode és essencialper mantenir la integritat i la qualitat de la imatge, especialment quan es tracta deGIFs animats o seqüències de quadres.
public void ResizeFullFrame(int newWidth, int newHeight, ResizeType resizeType)
Parameters
newWidth
int
La nova amplada.
newHeight
int
La nova alçada.
resizeType
ResizeType
El tipus de residus.
ResizeProportional(Int, int, ResizeTyp)
La resignació proporcional manté la proporció d’aspecte de la imatge mentre ajusta el seu mida, assegurant que l’imatge no apareix estesa o distorsionada. Aquest mètode resisteix la seva imatge proporcionalment, escalant tant la amplada com la alçada pel mateix factor.La resisació proporcionalitzada resideix cada quadre segons la relació de newWidth’/width i <classe code=“paramref>newHeight”/height.
public void ResizeProportional(int newWidth, int newHeight, ResizeType resizeType)
Parameters
newWidth
int
La nova amplada.
newHeight
int
La nova alçada.
resizeType
ResizeType
El tipus de residus.
Rotate(Float, bool i color)
Aquest mètode gira la imatge al voltant del seu punt central.angle, podeu girar la imatge de manera horitzontal o contral·locacional per aconseguir elorientació desitjada. aquesta rotació ajuda a ajustar la presentació de la imatge od’acord sense distorsionar el seu contingut.
public override void Rotate(float angle, bool resizeProportionally, Color backgroundColor)
Parameters
angle
float
L’angle de rotació en graus. els valors positius giraran de manera horària.
resizeProportionally
bool
si s’estableix a ’true’ haurà canviat la mida de la imatge segons les projeccions rectangles (punts de cor) girades en altres casos que deixen les dimensions sense tocar i només interiors els continguts d’imatge es giren.
backgroundColor
Color
El color del fons.
RotateFlip(RotateFlipType)
Performan rotació, flipping, o ambdós en el marc actiu exclusivament.Aplica les transformacions únicament al marc actual de la imatge,Conservació de la integritat dels altres quadres en la seqüència.
public override void RotateFlip(RotateFlipType rotateFlipType)
Parameters
rotateFlipType
RotateFlipType
El tipus de flip rotat.
Examples
Aquest exemple carrega una imatge GIF, la gira per 90 graus d’hora i opcionalment flipa l’imatge horitzontal i/o vertical.
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)
Estalvia les dades.
protected override void SaveData(Stream stream)
Parameters
stream
Stream
El flux per salvar les dades a.
SetFrameTime(Esquena)
Ajusta la durada de cada quadre en millisecons, assegurant un temps coherentdurant tota la seqüència d’imatge. aquest mètode fixa uniformament el temps de presentació perCada quadre, permetent un control precís sobre la velocitat d’animació.El canvi d’aquest valor retornarà el retard per a tots els quadres.
public void SetFrameTime(ushort time)
Parameters
time
ushort
La durada del marc en milliseconds.
UpdateDimensions(Int, Int)
Actualitza les dimensions de la imatge.
protected override void UpdateDimensions(int newWidth, int newHeight)
Parameters
newWidth
int
La nova imatge d’amplada.
newHeight
int
Alçada de la nova imatge.