Class GifImage
Именује се: Aspose.Imaging.FileFormats.Gif Асамблеја: Aspose.Imaging.dll (25.4.0)
АПИ за графички формат за размену слике (ГИФ) датотекупрограмери са свеобухватним алатима за обраду компресираних растер слика ианимирани ГИФ. нуди карактеристике као што су XMP метадане обраде, палете бојаподешавања, позадина и транспарентна контрола боја, подешавања непацитности, резиме,зрна, апликација филтера, гамма корекције, контраст прилагођавање, граискалетрансформација, и конверзија на друге формати. Овај АПИ омогућава беспрекорноманипулација и побољшање ГИФ слике за широк спектар апликација.
[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
Наслеђени чланови
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
Експорт дела анимације из ГИФ слике на основу временског интервала.
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);
}
Овај пример показује како да креирате ГИФ слику и сачувате је у датотеку.
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");
}
}
Креирајте мултистрани ГИФ слике користећи једну страницу растер слика.
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(ГИФФРАМЕБЛОК, ИЦОЛОРПАЛЕТ)
Покрените нови ВЛ17.ФилеФормати.Гиф.ГефИмаге објекат са одређеним параметрима заПрви оквир и глобална палета. почети управљање ГИФ сликама брзо, осигуравајућитачна репрезентација са прилагодљивим подешавањама за оптималне резултате.
public GifImage(GifFrameBlock firstFrame, IColorPalette globalPalette)
Parameters
firstFrame
GifFrameBlock
Први оквир за иницијализацију ГИФ слике са.
globalPalette
IColorPalette
Имајте на уму да ако су firstFrame’ и <code class=paranf">globalPalette’ нуле, онда се користи подразумевани глобални палет.
Examples
Овај пример показује како да креирате ГИФ слику са прилагођеном палетом и сачувате га у датотеку.
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
firstFrame’ ne može da bude nula
firstFrame’ већ припада неком другом слици.
globalPalette’ specifikacija treba da sadrži broj ulazaka jednako snagu 2. minimalna veličina palete je 2, maksimalna je 256.
GifImage(GifFrameBlock)
Креирање ГИФ слике постаје бескорисно са ВЛ17.ФилеФорматис.Гиф.ГефИмагеСа само првим параметром Фрам, он улази у свет динамикевизуелне комуникације .
public GifImage(GifFrameBlock firstFrame)
Parameters
firstFrame
GifFrameBlock
Први оквир за иницијализацију ГИФ слике са.
Examples
Овај пример показује како да креирате ГИФ слику и сачувате је у датотеку.
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");
}
}
Следећи пример показује како да се компонује анимирана ГИФ слика из појединачних ГиФ блокова.
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
firstFrame’ ne može da bude nula
firstFrame’ већ припада неком другом слици.
Палета која је наведена мора да садржи бројеве уноса једнака снази 2. Минимална величина палета је 2, максимално је 256.
GifImage(GifFrameBlock, IColorPalette, боол, байт, бит)
Počnite bez napora sa Aspose.Imaging.FileFormats.Gif. GifImage konstruktorom.једноставан метод, можете да се потопите у креирање анимираних ГИФ-а лако.firstFrame, globalPalette, paletteColorResolution, aspectRatio, и другипараметри, а ви сте спремни да донесете своје визуеле у живот.
public GifImage(GifFrameBlock firstFrame, IColorPalette globalPalette, bool isPaletteSorted, byte paletteColorResolution, byte paletteBackgroundColorIndex, byte aspectRatio, bool hasTrailer)
Parameters
firstFrame
GifFrameBlock
Први оквир за иницијализацију ГИФ слике са.
globalPalette
IColorPalette
Имајте на уму да ако су firstFrame’ и <code class=paranf">globalPalette’ нуле, онда се користи подразумевани глобални палет.
isPaletteSorted
bool
Ако је постављен на “истину” палет је рангиран. Напомињете да се параметар користи када globalPalette" није нула.
paletteColorResolution
byte
Имајте на уму да се параметар користи када globalPalette’ није нула.
paletteBackgroundColorIndex
byte
Индекс боје за позадину.
aspectRatio
byte
у односу на аспект.
hasTrailer
bool
ако је постављен на ‘истину’ ГИФ слику има трејлер иначе нема трајлера написана на крају тока.
Exceptions
firstFrame’ ne može da bude nula
firstFrame’ већ припада неком другом слици.
globalPalette’ specifikacija treba da sadrži broj ulazaka jednako snagu 2. minimalna veličina palete je 2, maksimalna je 256.
Properties
ActiveFrame
Управљање и манипулисање оквирима са овим својством, омогућавајући глатку навигацију иПромена активног оквира унутар ГИФ слике.
public GifFrameBlock ActiveFrame { get; set; }
Вредност имовине
Examples
Следећи пример показује како уклонити све блокове из ГИФ слике.
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
Управљање бојом позадине слике ГИФ-а са овим својством. можете поставити илиузети боју позадине како би се осигурала конзистентност и побољшала визуелна привлачност.
public override Color BackgroundColor { get; set; }
Вредност имовине
BackgroundColorIndex
Контролишете индекс боје позадине слике ГИФ-а користећи ову својство.узимање индекса како би се одржала конзистентност или постигли жељени визуелни ефекти.
public byte BackgroundColorIndex { get; set; }
Вредност имовине
Blocks
Добијте приступ ГИФ блоковима беспрекорно са овим имовином, олакшавајући лакообраћање и манипулација основним структурама података слике.
public IGifBlock[] Blocks { get; }
Вредност имовине
IGifBlock []
FileFormat
Вратите формат датотеке без напора са овим својством. то је ваш изворда бисте идентификовали формат ваших датотека. беспрекорно интегрисани у ваш радни ток,Они пружају важне информације без икаквих преваре.
public override FileFormat FileFormat { get; }
Вредност имовине
HasBackgroundColor
Ова својства одређује да ли ГИФ слика садржи боју позадине.Истина, то указује на то да слика укључује боју позадине.
public override bool HasBackgroundColor { get; }
Вредност имовине
HasTrailer
Управљајте присуством трејлера у својим ГИФ датотекама са овим својством.потребно је проверити да ли трејлер постоји или поставити његову присуство, ова имовина олакшаваДржите своје ГИФ датотеке структуриране и у складу са овим интуитивним функцијом.
public bool HasTrailer { get; set; }
Вредност имовине
HasTransparentColor
Одређивање да ли активни оквир ГИФ слике садржи транспарентну боју.Ова имовина пружа погодан начин да се провери транспарентност унутар слике.
public override bool HasTransparentColor { get; set; }
Вредност имовине
ImageOpacity
Повратак нејасности активног оквира унутар слике, пружајући увид уЊегов ниво транспарентности. Ова имовина је посебно корисна за разумевањестепен транспарентности или непажљивости активног оквира у слици.
public override float ImageOpacity { get; }
Вредност имовине
IsInterlaced
Одређује да ли је слика међусобно повезана, што утиче на његов екран током пуњења.имовина нуди увид у понашање слике, неопходно заоптимизацију стратегија оптерећења и побољшање општег искуства гледања.
public bool IsInterlaced { get; }
Вредност имовине
IsPaletteSorted
Контролише сортирање палете у вашим ГИФ сликама користећи ову својство.морате да проверите да ли је палет сортиран или да постављате понашање сортирања, овоимовина пружа једноставан начин управљања палетом организације у вашемГИФ датотеке
public bool IsPaletteSorted { get; set; }
Вредност имовине
LoopsCount
Уклоните рачун круга без напора са овим својством. ако ваш ГИФ слика укључујеинформације о кругу, ова имовина вам даје брз приступ броју круга, омогућавајућида немилосрдно управљају лоутинг понашање у својим ГИФ датотеке.
public int LoopsCount { get; set; }
Вредност имовине
PageCount
Вратите укупни број страница садржаних у слици са овимЈедноставна имовина. идеалан за брзу процену величине садржаја слике.
public override int PageCount { get; }
Вредност имовине
Pages
добити приступ страницама унутар слике кроз ову удобну имовину,омогућавање беспрекорног навигације и манипулације појединачним страницама, ако је потребно.
public override Image[] Pages { get; }
Вредност имовине
Image []
PaletteColorResolutionBits
Управљајте резолуцијом палете боја ваших ГИФ слика са овим својством.број бита који се користе за представљање боја у палети, пружајући фину контролупреко боје дубине и квалитета слике.
public byte PaletteColorResolutionBits { get; set; }
Вредност имовине
PixelAspectRatio
Управљајте однос пиксела аспекта слике ГИФ-а са овим својством.однос аспекта како би се осигурало тачно предавање и одржавање визуелне верности.
public byte PixelAspectRatio { get; set; }
Вредност имовине
TransparentColor
Вратите транспарентну боју активног оквира у слици ГИФ-а.омогућава вам да приступите одређеној боји која је означена као транспарентнаУ овом тренутном активном оквиру.
public override Color TransparentColor { get; }
Вредност имовине
XmpData
Управљање XMP метаданима са овим својством. да ли добијате постојеће метаденеили да га ажурирају са новим информацијама, ова имовина убрзава процес.организоване и приступачне ваше метадане, осигуравајући да ваши датотеке садржерелевантне информације које требају.
public override XmpPacketWrapper XmpData { get; set; }
Вредност имовине
Methods
AddBlock(ИГИФБЛОК)
Додавање новог ГИФ блока вам омогућава да укључите додатне податке у слику.Овај метод вам омогућава да додате прилагођене блокове на ГИФ слику, која можеСадржи различите врсте информација.
public void AddBlock(IGifBlock block)
Parameters
block
IGifBlock
ГИФ блок да додају.
Examples
Следећи пример показује како да се компонује анимирана ГИФ слика из појединачних ГиФ блокова.
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)
Инкорпорирајте нову страницу беспрекорно у постојећу слику, побољшавајући његов садржаји проширити свој опсег. овај метод повећати колекције слике са додатнимсадржај, промовисање креативности и флексибилности у управљању сликама и композицији.
public void AddPage(RasterImage page)
Parameters
page
RasterImage
Странице које треба додати.
Examples
Креирајте мултистрани ГИФ слике користећи једну страницу растер слика.
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(Инт)
Прилагођава сјај слике у складу са одређеним параметром светлости <код класа=“paramref”>. Ова метода јединствено модификује светлост целокупне слице, побољшавајући или смањујући укупну осветљеност да би се постигао жељени ефекат.
public override void AdjustBrightness(int brightness)
Parameters
brightness
int
вредност светлости .
Examples
Следећи пример врши корекцију светлости ГИФ слике.
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(Флоат)
Прилагођава контраст слике, побољшава или смањује разлику усветлост између пиксела. овај метод мења укупни тонални опсег слике,учинити тамније подручје тамнијим и светлијим подручјима сјајнијим како би се побољшала визуелна јасноћаi detalja .
public override void AdjustContrast(float contrast)
Parameters
contrast
float
Вредност контраста (у опсегу [-100; 100])
Examples
Следећи пример врши корекцију контраста ГИФ слике.
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
Не може да промени контраст. оквирни индекс: " + frameIndex
AdjustGamma(Флоат)
Побољшање квалитета слике применом гама корекције. Овај метод прилагођава бојуГама слике за постизање оптималне визуелне јасноће.од сваког пиксела, што доводи до побољшања боје и општег изгледа слике.
public override void AdjustGamma(float gamma)
Parameters
gamma
float
Гама за коефицијент црвених, зелених и плавих канала
Examples
Следећи пример врши гама-корекцију ГИФ слике.
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(пловила, пловила и пловила)
Гамма-корекција слике примењује нелинеарну прилагођавање вредностима пиксела,побољшање или смањење светлости на основу одређених коефицијента за црвену,зелени, и плави канали. овај метод помаже да се фино-тоне баланс боја иосветљење слике, побољшавајући његов укупни изглед и визуелну квалитет.
public override void AdjustGamma(float gammaRed, float gammaGreen, float gammaBlue)
Parameters
gammaRed
float
Гама за коефицијент црвеног канала
gammaGreen
float
Гама за зелени канал коефицијент
gammaBlue
float
Гама за коефицијент плавог канала
Examples
Следећи пример врши гама-корекцију ГИФ слике која примењује различите коефицијенте за компоненте боје.
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(Двоструко)
Бинаризација слике користећи алгоритам за адаптивну границу Бредлеи саИнтегрално гравирање слике је метод за конверзију графичког слика уовај алгоритам израчунава локални праг за сваки пиксел на основупросечна интензитет околних пиксела у одређеном прозору.адаптивно прилагођавање прага на основу локалних пикселних интензитета, БредлеиМетода је ефикасна у управљању варијацијама светлости и контраста широм слике.
public override void BinarizeBradley(double brightnessDifference)
Parameters
brightnessDifference
double
Разлика у светлости између пиксела и просечног прозора пиксела који се фокусира око овог пиксела.
BinarizeFixed(Бајте)
Бинаризација слике са претходно дефинисаним прагом конвертује сиву скалу или бојуслика у бинарну слику, где је сваки пиксел класификован као црна или белау зависности од тога да ли његова интензитетна вредност прелази одређени праг.
public override void BinarizeFixed(byte threshold)
Parameters
threshold
byte
Ако је одговарајућа сива вредност пиксела већа од границе, њему ће бити додељена вредност од 255, 0 иначе.
Examples
Следећи пример бинаризује ГИФ слику са претходно дефинисаним прагом. бинарни слике садрже само 2 боје - црну и белу.
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()
Бинаризација слике са Оцу гранични је метод који се користи за аутоматскиодређује оптималну граничну вредност за конверзију графичке слике уАлгоритам Оцу трајања израчунава лимит којиминимизира интра-класне варијанте интензитета пиксела у оба резултатакласе (преградна и позадина). Ова техника је посебно корисна кадаОптимална гранична вредност је непозната и мора се утврдити адаптивно на основуна хистограму слике.
public override void BinarizeOtsu()
Examples
Sledeći primer binarizuje GIF sliku sa Otsu ograničenjem.Binarizovane slike sadrže samo 2 boje - crno i belo.
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()
Чишћење свих ГИФ блокова уклања све постојеће податке које се чувају у слици.Ова операција ефикасно репродукује слику у празан стање, уклањајући било којираније додати блокови. користите ову методу када морате почети свеж са чистимSlate da biste stvorili ili promenili GIF sliku.
public void ClearBlocks()
Examples
Следећи пример показује како уклонити све блокове из ГИФ слике.
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)
Направите слику користећи одређено правоугаоно подручје. Ова операција уклања спољашњостдео слике, остављајући само изабрани регион дефинисан правоугаоном.
public override void Crop(Rectangle rectangle)
Parameters
rectangle
Rectangle
То је правоугао.
Examples
Следећи пример узгаја ГИФ слику. подручје за сакупљање се одређује путем 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(ДитарингМетод, инт, ИцлорПалет)
Примените дитирање на тренутну слику. овај процес побољшава квалитет сликесмањује боју и побољшава прелазак боје, што доводи до глаткогизглед .
public override void Dither(DitheringMethod ditheringMethod, int bitsCount, IColorPalette customPalette)
Parameters
ditheringMethod
DitheringMethod
То је дитринг метода.
bitsCount
int
Последњи битови рачунају за дитирање.
customPalette
IColorPalette
Прилагођена палета за дитирање.
Examples
Следећи пример наплаћује ГИФ слику и врши граничне и течне дитирања користећи различите дубине палете.
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(Ректонгле, ФилтерОпцијеБазе)
Нанесите одређени филтер на одређено подручје слике, побољшавајући његову визуелнуквалитет или промену његовог изгледа као што је пожељно. овај метод селективно процењујеПиксели у одређеном правоугаону, омогућавајући да се направе циљне прилагођавањаЗаштита интегритета околних података.
public override void Filter(Rectangle rectangle, FilterOptionsBase options)
Parameters
rectangle
Rectangle
То је правоугао.
options
FilterOptionsBase
о опцијама .
Examples
Следећи пример примењује различите врсте филтера на ГИФ слику.
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()
Вратите оригиналне опције засноване на подешавањама датотеке, од суштинског значаја за одржавање верностии конзистентност у обради слике и манипулације. ова метода омогућава беспрекорноинтегрисање параметара специфичних за датотеке у касније операције, обезбеђујућипрецизна испорука и придржавање инхерентних карактеристика слике.Ово може бити корисно за одржавање детаљне дубине и других параметара оригиналне слике непромењене.На пример, ако наплаћујемо црно-белу ПНГ слику са 1 битом по пикселу, а затим га сачувате користећиAspose.Imaging.DataStreamSupporter.Save(System.String) метода, излазна ПНГ слика са 8 бита по пикселу ће бити произведена.Да бисте то избегли и сачували ПНГ слику са 1 битом по пикселу, користите ову методу да бисте добили одговарајуће опције за штедњу и прошли их.до метода Aspose.Imaging.Image.Save(System.String,_Wl17.ImageOptionsBase) као други параметар.
public override ImageOptionsBase GetOriginalOptions()
Returns
Опције засноване на оригиналним поставкама датотеке.
Grayscale()
Претварање слике у његову сиву репрезентацију конвертује бојуСлика у сиву верзију уклањањем информација о боји док се чуваОвај процес поједноставља слику до нијанси сиве, чинећи је погодномза различите апликације као што су штампање, обрада докумената и граискалеАнализа је.
public override void Grayscale()
Examples
Следећи пример претвара обојени ГИФ слику у његову графичку репрезентацију. графичке слике се састоје искључиво од сенки сиве и носе само информације интензитета.
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(Инт, ИгифБлоцк)
Убацивање новог ГИФ блока вам омогућава да додате прилагођене податке у одређеном положајуунутар слике. овај метод вам омогућава да поставите прилагођене блокове на жељеномлокација у ГИФ слици, пружајући флексибилност у организацији и структурирањуСлике података .
public void InsertBlock(int index, IGifBlock block)
Parameters
index
int
нуле-базирани елемент, на који блок ће бити убачен.
block
IGifBlock
ГИФ блок да додају.
OnPaletteChanged(ИЦОЛОРПАЛЕТ, ИЦОЛОРПАЛЕТ)
Позива се када се палет мења.
protected override void OnPaletteChanged(IColorPalette oldPalette, IColorPalette newPalette)
Parameters
oldPalette
IColorPalette
Стари палети.
newPalette
IColorPalette
Нова палета је.
OnPaletteChanging(ИЦОЛОРПАЛЕТ, ИЦОЛОРПАЛЕТ)
Позива се када се палет мења.
protected override void OnPaletteChanging(IColorPalette oldPalette, IColorPalette newPalette)
Parameters
oldPalette
IColorPalette
Стари палети.
newPalette
IColorPalette
Нова палета је.
OrderBlocks()
Наредба Блокова ГИФ-а у складу са спецификацијом ГиФ обезбеђује одговарајуће Г ИФраспоред и усклађеност са стандардом. овај процес укључује уређењеблокови у правилној секвенцији, као што је дефинисано спецификацијом.може да укључује уклањање одређених Aspose.Imaging.FileFormats.Gif.Blocks.GuffGraphicsControlBlock инстанце којенису неопходни за коначни распоред. придржавањем спецификације ГИФ-а,Резултат слике ће бити правилно структуриран и компатибилан са ГИФ прегледомапликације .
public void OrderBlocks()
RemoveBlock(ИГИФБЛОК)
Уклањање ГИФ блока уклања одређене податке са слике, пружајући могућност дачишћење или модификовање структуре слике. Овај метод вам омогућава да уклоните нежељенеили непотребне блокове, оптимизирајући ГИФ слику за ефикасно складиштење.Функционалност за уклањање застарелих информација из слике док сеЊегова интегритет и квалитет.
public void RemoveBlock(IGifBlock block)
Parameters
block
IGifBlock
Блок да се уклони.
Remarks
Napomena: nemojte zaboraviti da stavite blok ako ga ne dodate nekom drugom GifImage-u.
Resize(int, int, resizeType)
Преузмите овај Aspose.Imaging.Изображење примјер.
public override void Resize(int newWidth, int newHeight, ResizeType resizeType)
Parameters
newWidth
int
Нова ширина је.
newHeight
int
Нова висина је.
resizeType
ResizeType
Тип рецидива .
Examples
Овај пример наплаћује ГИФ слику и рецизира га користећи различите методе рецесирања.
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, ImageResizeСеттингс)
Преузмите овај Aspose.Imaging.Изображење примјер.
public override void Resize(int newWidth, int newHeight, ImageResizeSettings settings)
Parameters
newWidth
int
Нова ширина је.
newHeight
int
Нова висина је.
settings
ImageResizeSettings
Успостављања је.
Examples
Овај пример наплаћује ГИФ слику и рецизира га користећи различите подешавања ресинга.
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)
Рециклирање слике, узимајући у обзир пуне оквире за сваку страницу уГИФ, тако да спречава појаву потенцијалних артефаката. овај метод је неопходанодржавање интегритета и квалитета слике, посебно када се бавианимирани ГИФ или секције оквира.
public void ResizeFullFrame(int newWidth, int newHeight, ResizeType resizeType)
Parameters
newWidth
int
Нова ширина је.
newHeight
int
Нова висина је.
resizeType
ResizeType
Тип рецидива .
ResizeProportional(int, int, resizeType)
Пропорционално резизирање одржава однос аспекта слике док прилагођава његову величину, осигуравајући да се слика не појављује пространа или деформисана. Ова метода рецизира слику пропортивно, скалирајући и ширину и висину по истом фактору.Пропорцијални ресиз ће редизирати сваки оквир према односу <код класа=“paramref”>newВид ‘/ширина и <Код класе=“парамреф”>новоГлава’/височина.
public void ResizeProportional(int newWidth, int newHeight, ResizeType resizeType)
Parameters
newWidth
int
Нова ширина је.
newHeight
int
Нова висина је.
resizeType
ResizeType
Тип рецидива .
Rotate(флот, боол, боја)
Овај метод окреће слику око његове централне тачке.угао, можете ротирати слику сат или контрчасовно да бисте постиглиова ротација помаже да се прилагоди презентација слике илиУсаглашавање без поремећаја садржаја.
public override void Rotate(float angle, bool resizeProportionally, Color backgroundColor)
Parameters
angle
float
Угао ротације у степени. позитивне вредности ће ротирати сат.
resizeProportionally
bool
ако сте постављени на ‘истину’ ћете имати своју величину слике промењене у зависности од ротираног правоугао (корене тачке) пројекције у другом случају које остављају димензије нетакнуте и само унутрашњости садржај слики су ротирани.
backgroundColor
Color
Боја позадине.
RotateFlip(RotateFlipType)
Извршите ротацију, флипирање или оба на активном оквиру искључиво.примењује трансформације искључиво на тренутно активни оквир слике,Заштита интегритета других оквира у реду.
public override void RotateFlip(RotateFlipType rotateFlipType)
Parameters
rotateFlipType
RotateFlipType
Тип ротираног флипа.
Examples
Овај пример оптерећује ГИФ слику, окреће је на 90 степени са часовима и опционално флипира слике хоризонтално и (или) вертикално.
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)
Sačuvajte podatke.
protected override void SaveData(Stream stream)
Parameters
stream
Stream
Поток да сачувате податке на.
SetFrameTime(Ушорт)
Прилагођава трајање сваког оквира у милисекундима, обезбеђујући конзистентан временски периодтоком серије слике. овај метод јединствено одређује време приказивања засваки оквир, омогућавајући прецизну контролу брзине анимације.Промена ове вредности ће поново успоставити кашњење за све оквире.
public void SetFrameTime(ushort time)
Parameters
time
ushort
Време трајања оквира у милисекундима.
UpdateDimensions(Инт, Инт)
Ажурирајте димензије слике.
protected override void UpdateDimensions(int newWidth, int newHeight)
Parameters
newWidth
int
Нова ширина слике.
newHeight
int
Нова висина слике.