Class GifImage

Class GifImage

نام ها : Aspose.Imaging.FileFormats.Gif جمع آوری: Aspose.Imaging.dll (25.4.0)

API for Graphical Interchange Format (GIF) فایل تصویر ارائه می دهدتوسعه دهندگان با ابزارهای متنوع برای پردازش تصاویر راستر فشرده وGIF های متحرک ارائه ویژگی هایی مانند پردازش متات داده های XMP، پالت رنگیتنظیمات، پس زمینه و کنترل شفاف رنگ، تنظیمات نابودی، بازسازی،محصول، فیلتر کاربرد، اصلاحات گاما، تنظیم کنتراست، grayscaleتبدیل، و تبدیل به فرمت های دیگر.این API اجازه می دهد بی سیمدستکاری و بهبود تصاویر GIF برای طیف گسترده ای از برنامه ها.

[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

صادرات بخشی از انیمیشن از تصویر GIF بر اساس فاصله زمانی.

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);
                                                                             }

این مثال نشان می دهد که چگونه یک تصویر GIF ایجاد کنید و آن را به یک فایل ذخیره کنید.

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");
                                                                                  }
                                                                              }

ایجاد یک تصویر 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(GifFrameBlock، IColorPalette)

شروع یک Aspose.Imaging.FileFormats.Gif.GifImage جدید با پارامترهای مشخص شده برایاولین چارچوب و پالت جهانی. شروع به مدیریت تصاویر GIF به سرعت، تضمیننمایش دقیق با تنظیمات سفارشی برای نتایج مطلوب.

public GifImage(GifFrameBlock firstFrame, IColorPalette globalPalette)

Parameters

firstFrame GifFrameBlock

اولین چارچوب برای شروع تصویر GIF با.

globalPalette IColorPalette

توجه داشته باشید اگر هر دو firstFrame’ و globalPalette’ صفر هستند، پس از آن پالت جهانی پیش فرض مورد استفاده قرار می گیرد.

Examples

این مثال نشان می دهد که چگونه یک تصویر GIF را با یک پالت سفارشی ایجاد کنید و آن را به یک فایل ذخیره کنید.

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

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

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

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

Exceptions

ArgumentNullException

firstFrame’ نمی تواند صفر باشد

ArgumentException

firstFrame’ در حال حاضر متعلق به برخی از تصاویر دیگر است.

GifImageException

globalPalette’ مشخص شده باید شامل تعداد ورودی برابر با قدرت 2. حداقل اندازه پالت 2 است، حداکثر 256.

GifImage(GifFrameBlock)

ساختن تصاویر GIF بدون تلاش با Aspose.Imaging.FileFormats.Gif.GifImageبا اولین پارامتر Frame، وارد دنیای دینامیک می شود.ارتباطات بصری

public GifImage(GifFrameBlock firstFrame)

Parameters

firstFrame GifFrameBlock

اولین چارچوب برای شروع تصویر GIF با.

Examples

این مثال نشان می دهد که چگونه یک تصویر GIF ایجاد کنید و آن را به یک فایل ذخیره کنید.

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");
                                                                                  }
                                                                              }

مثال زیر نشان می دهد که چگونه برای ترکیب یک تصویر GIF انیمیشن از بلوک های GIF فردی.

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

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

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

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

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

                                                                                                               gifImage.AddBlock(block);
                                                                                                           }

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

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

                                                                                                               gifImage.AddBlock(block);
                                                                                                           }

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

Exceptions

ArgumentNullException

firstFrame’ نمی تواند صفر باشد

ArgumentException

firstFrame’ در حال حاضر متعلق به برخی از تصاویر دیگر است.

GifImageException

پالت مشخص شده باید حاوی تعداد ورودی برابر با قدرت 2 باشد حداقل اندازه پالت 2 است، حداکثر 256 است.

GifImage(GifFrameBlock، IColorPalette، بوت، بوت، بوت، بوت)

شروع کنید بدون تلاش با Aspose.Imaging.FileFormats.Gif.GifImage سازنده.روش ساده، شما می توانید به ایجاد GIF های انیمیشن به راحتی غوطه ور.firstFrame، globalPalette، paletteColorResolution، aspectRatio، و دیگرانپارامترها، و شما آماده برای به ارمغان آوردن بصری خود را به زندگی.

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

Parameters

firstFrame GifFrameBlock

اولین چارچوب برای شروع تصویر GIF با.

globalPalette IColorPalette

توجه داشته باشید اگر هر دو firstFrame’ و globalPalette’ صفر هستند، پس از آن پالت جهانی پیش فرض مورد استفاده قرار می گیرد.

isPaletteSorted bool

اگر به “واقعی” تنظیم شده باشد، پالت طبقه بندی می شود.به یاد داشته باشید که پارامتر استفاده می شود زمانی که globalPalette" صفر نیست.

paletteColorResolution byte

توجه داشته باشید که پارامتر استفاده می شود زمانی که globalPalette’ صفر نیست.

paletteBackgroundColorIndex byte

شاخص رنگ پس زمینه

aspectRatio byte

نسبت جنبه

hasTrailer bool

اگر تنظیم شده به “واقعی” تصویر GIF تریلر در غیر این صورت هیچ تریلر نوشته شده در پایان جریان.

Exceptions

ArgumentNullException

firstFrame’ نمی تواند صفر باشد

ArgumentException

firstFrame’ در حال حاضر متعلق به برخی از تصاویر دیگر است.

GifImageException

globalPalette’ مشخص شده باید شامل تعداد ورودی برابر با قدرت 2. حداقل اندازه پالت 2 است، حداکثر 256.

Properties

ActiveFrame

مدیریت و دستکاری چارچوب ها با این ویژگی، امکان ناوبری صاف وتغییر چارچوب فعال در تصویر GIF.

public GifFrameBlock ActiveFrame { get; set; }

ارزش املاک

GifFrameBlock

Examples

مثال زیر نشان می دهد که چگونه تمام بلوک ها را از یک تصویر 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

مدیریت رنگ پس زمینه تصویر GIF با این ویژگی شما می توانید تنظیم و یارنگ پس زمینه را به دست آورید تا هماهنگی را تضمین کند و جذابیت بصری را افزایش دهد.

public override Color BackgroundColor { get; set; }

ارزش املاک

Color

BackgroundColorIndex

کنترل شاخص رنگ پس زمینه از تصویر GIF با استفاده از این ویژگی.شاخص را برای حفظ هماهنگی یا به دست آوردن اثرات بصری مورد نظر بازگردانید.

public byte BackgroundColorIndex { get; set; }

ارزش املاک

byte

Blocks

به دست آوردن دسترسی به بلوک های GIF به راحتی با این املاک، تسهیل آسانبازگرداندن و دستکاری ساختارهای داده پایه تصویر.

public IGifBlock[] Blocks { get; }

ارزش املاک

IGifBlock [ ]

FileFormat

بازگرداندن فرمت فایل بدون تلاش با این ویژگی است.برای شناسایی فرمت فایل های شما.به طور ناخودآگاه در جریان کار شما ادغام شده،اطلاعات مهمی را بدون هیچ مشکلی ارائه می دهد.

public override FileFormat FileFormat { get; }

ارزش املاک

FileFormat

HasBackgroundColor

این ویژگی تعیین می کند که آیا تصویر GIF حاوی یک رنگ پس زمینه است.درست است، نشان می دهد که تصویر شامل یک رنگ پس زمینه است.

public override bool HasBackgroundColor { get; }

ارزش املاک

bool

HasTrailer

مدیریت حضور یک تریلر در فایل های GIF خود را با این دارایی.باید بررسی شود که آیا یک تریلر وجود دارد یا حضور آن را تنظیم می کند، این دارایی ساده تر می شود.فرآیند حفظ فایل های GIF خود را ساختار یافته و مطابق با این ویژگی بصری.

public bool HasTrailer { get; set; }

ارزش املاک

bool

HasTransparentColor

تعیین اینکه آیا چارچوب فعال تصویر GIF شامل یک رنگ شفاف است.این املاک یک راه مناسب برای بررسی شفافیت در تصویر فراهم می کند.

public override bool HasTransparentColor { get; set; }

ارزش املاک

bool

ImageOpacity

بازگرداندن ناخودآگاه چارچوب فعال در داخل تصویر، ارائه بینش دربه نظر می رسد که این ویژگی به طور خاص برای درکدرجه شفافیت یا عدم شفافیت چارچوب فعال در تصویر.

public override float ImageOpacity { get; }

ارزش املاک

float

IsInterlaced

تعیین می کند که آیا تصویر متصل است، تاثیر نمایش آن در هنگام بارگذاری.مالکیت ارائه می دهد درک در رفتار ارائه تصویر، ضروری برایبهینه سازی استراتژی های بارگذاری و بهبود تجربه مشاهده کلی.

public bool IsInterlaced { get; }

ارزش املاک

bool

IsPaletteSorted

کنترل رتبه بندی پالت در تصاویر GIF خود را با استفاده از این ویژگی.شما باید بررسی کنید که آیا پالت طبقه بندی شده است یا رفتار طبقه بندی تنظیم شده است، ایناملاک یک راه ساده برای مدیریت سازمان پالت در خود را فراهم می کندفایل های GIF

public bool IsPaletteSorted { get; set; }

ارزش املاک

bool

LoopsCount

بازگرداندن محاسبه حلقه بدون تلاش با این دارایی.اگر تصویر GIF شما شاملاطلاعات حلقه، این املاک به شما دسترسی سریع به محاسبه حلقه، اجازه می دهدشما به راحتی رفتار چرخش را در فایل های GIF خود مدیریت کنید.

public int LoopsCount { get; set; }

ارزش املاک

int

PageCount

بازگرداندن تعداد کل صفحات موجود در تصویر با اینمناسب برای ارزیابی سریع محدوده محتوای تصویر.

public override int PageCount { get; }

ارزش املاک

int

Pages

به دست آوردن دسترسی به صفحات درون تصویر از طریق این ملک مناسب،امکان ناوبری و دستکاری صفحات فردی در صورت لزوم

public override Image[] Pages { get; }

ارزش املاک

Image [ ]

PaletteColorResolutionBits

مدیریت رزولوشن رنگ پالت از تصاویر GIF خود را با این ویژگی.تعداد بیتی که برای نشان دادن رنگ ها در پالت استفاده می شود، کنترل خوبی را فراهم می کند.بر روی رنگ و کیفیت تصویر

public byte PaletteColorResolutionBits { get; set; }

ارزش املاک

byte

PixelAspectRatio

مدیریت نسبت جنبه پیکسل تصویر GIF با این ویژگی.نسبت جنبه برای اطمینان از عملکرد دقیق و حفظ وفاداری بصری.

public byte PixelAspectRatio { get; set; }

ارزش املاک

byte

TransparentColor

بازگرداندن رنگ شفاف از چارچوب فعال در تصویر GIF.اجازه می دهد تا به رنگ خاص که به عنوان شفاف مشخص شده است دسترسی داشته باشید.در چارچوب فعلی فعال است.

public override Color TransparentColor { get; }

ارزش املاک

Color

XmpData

مدیریت متا داده های XMP با این دارایی. آیا شما به دست آوردن متا داده های موجودیا آن را با اطلاعات جدید به روز کنید، این دارایی فرآیند را سریع تر می کند.متا داده های شما سازمان یافته و قابل دسترس است و اطمینان حاصل می شود که فایل های شما شاملاطلاعاتی که به آن نیاز دارید

public override XmpPacketWrapper XmpData { get; set; }

ارزش املاک

XmpPacketWrapper

Methods

AddBlock(IGIFBlock)

اضافه کردن یک بلوک GIF جدید به شما اجازه می دهد تا اطلاعات اضافی را در تصویر قرار دهید.این روش به شما اجازه می دهد تا بلوک های سفارشی را به تصویر GIF اضافه کنید، که می تواندشامل انواع مختلفی از اطلاعات است.

public void AddBlock(IGifBlock block)

Parameters

block IGifBlock

بلوک GIF اضافه می شود.

Examples

مثال زیر نشان می دهد که چگونه برای ترکیب یک تصویر GIF انیمیشن از بلوک های GIF فردی.

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

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

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

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

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

                                                                                                               gifImage.AddBlock(block);
                                                                                                           }

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

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

                                                                                                               gifImage.AddBlock(block);
                                                                                                           }

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

AddPage(RasterImage)

یک صفحه جدید را به صورت بی اساس در تصویر فعلی قرار دهید و محتوای آن را افزایش دهید.و گسترش محدوده آن. این روش افزایش مجموعه های تصویر با اضافه کردنمحتوا، ترویج خلاقیت و انعطاف پذیری در مدیریت تصویر و ترکیب.

public void AddPage(RasterImage page)

Parameters

page RasterImage

صفحه ای برای اضافه کردن

Examples

ایجاد یک تصویر 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 &lt; frames.Length; index++)
                                                                              {
                                                                                  image.AddPage(frames[index]);
                                                                              }

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

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

Exceptions

ArgumentNullException

page’ is null.

AdjustBrightness(int)

تنظیم درخشش تصویر با توجه به پارامتر مشخص شده درخشش.این روش درخشش کل تصویر را به طور یکنواختی تغییر می دهد، با افزایش یا کاهش درخشش کلی برای به دست آوردن اثر مورد نظر.

public override void AdjustBrightness(int brightness)

Parameters

brightness int

ارزش روشنایی

Examples

مثال زیر اصلاح روشنایی یک تصویر 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(کشتی)

تنظیم کنتراست تصویر، افزایش یا کاهش تفاوت درروشنایی بین پیکسل ها: این روش محدوده کل نغمه تصویر را تغییر می دهد.ایجاد مناطق تاریک تیره تر و مناطق روشن تر برای بهبود شفافیت بصریو جزئیات

public override void AdjustContrast(float contrast)

Parameters

contrast float

ارزش کنتراست (در محدوده [-100؛ 100])

Examples

مثال زیر اصلاح کنتراست یک تصویر GIF را انجام می دهد.

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

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

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

Exceptions

ImageException

شاخص چارچوب: " + frameIndex

AdjustGamma(کشتی)

بهبود کیفیت تصویر با استفاده از اصلاح گاما این روش رنگ را تنظیم می کندگاما تصویر برای به دست آوردن شفافیت بصری مطلوب. آن را تغییر ارزش گامااز هر پیکسل، منجر به بهبود رنگی و ظاهر کلی تصویر می شود.

public override void AdjustGamma(float gamma)

Parameters

gamma float

گاما برای کانال های قرمز، سبز و آبی

Examples

مثال زیر اصلاح گاما یک تصویر 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(کشتی، کشتی، کشتی)

اصلاح گاما یک تصویر یک تنظیم غیر خطی را به ارزش های پیکسل اعمال می کند.افزایش یا کاهش درخشش بر اساس شاخص های مشخص شده برای رنگ قرمز؛سبز، و کانال های آبی.این روش کمک به تمیز کردن تعادل رنگ وروشنایی تصویر، بهبود ظاهر کلی و کیفیت بصری آن.

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

Parameters

gammaRed float

گاما برای شاخص کانال قرمز

gammaGreen float

گاما برای شاخص کانال سبز

gammaBlue float

گاما برای شاخص کانال آبی

Examples

مثال زیر اصلاح گاما یک تصویر 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 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(دوگانه)

دوگانه سازی یک تصویر با استفاده از الگوریتم محدودیت سازگار برادلیمحدودیت تصویر یک روش برای تبدیل یک تصویر در مقیاس خاکستری به یکاین الگوریتم محاسبه یک حد محلی برای هر پیکسل بر اساسمتوسط شدت پیکسل های اطراف در یک پنجره مشخص شده است.تنظیم قابل انطباق محدوده بر اساس شدت پیکسل محلی، Bradleyروش در مقابله با تغییرات در روشنایی و کنتراست در سراسر تصویر موثر است.

public override void BinarizeBradley(double brightnessDifference)

Parameters

brightnessDifference double

تفاوت در روشنایی بین پیکسل و میانگین یک پنجره x s پیکسل در اطراف این پیکسل متمرکز شده است.

BinarizeFixed(بایت)

دوگانه سازی یک تصویر با یک محدوده پیش تعیین شده تبدیل یک رنگ خاکستری یا رنگتصویر به یک تصویر باینری، که در آن هر پیکسل به عنوان سیاه یا سفید طبقه بندی می شودبر اساس اینکه آیا ارزش شدت آن فراتر از حد مشخص شده است.

public override void BinarizeFixed(byte threshold)

Parameters

threshold byte

اگر ارزش خاکستری یک پیکسل بالاتر از حد باشد، ارزش 255 به آن اختصاص داده می شود، 0 در غیر این صورت.

Examples

مثال زیر یک تصویر GIF با محدوده پیش تعیین شده را دوگانه می کند.تصویر دوگانه تنها حاوی 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()

دوگانه سازی یک تصویر با محدوده Otsu یک روش است که به طور خودکار استفاده می شود.تعیین حد مطلوب برای تبدیل یک تصویر در مقیاس خاکستری به یکتصویر دوگانه: الگوریتم محدوده Otsu محاسبه می کند کهبه حداکثر رساندن تغییرات در داخل کلاس از شدت پیکسل در دو نتیجهکلاس ها (پایه و پس زمینه) این تکنیک به ویژه مفید است زمانی کهحد حد مطلوب ناشناخته است و باید بر اساس انطباق تعیین شود.بر روی هیستوگرافی تصویر

public override void BinarizeOtsu()

Examples

مثال زیر یک تصویر GIF را با محدوده Otsu دوگانه می کند.تصویر دوگانه تنها حاوی 2 رنگ است - سیاه و سفید.

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()

پاک کردن تمام بلوک های GIF، تمام داده های موجود ذخیره شده در تصویر را حذف می کند.این عمل به طور موثر تصویر را به حالت خالی باز می گرداند و هراستفاده از این روش زمانی که شما نیاز به شروع تازه با یک تمیزاسلاید برای ایجاد یا تغییر تصویر GIF.

public void ClearBlocks()

Examples

مثال زیر نشان می دهد که چگونه تمام بلوک ها را از یک تصویر 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)

تصویر را با استفاده از یک منطقه مستطیل مشخص کنید.این عملیات خارج را حذف می کندبخشی از تصویر، تنها منطقه انتخاب شده را که توسط مستطیل تعریف شده است، ترک می کند.

public override void Crop(Rectangle rectangle)

Parameters

rectangle Rectangle

راستگوی است.

Examples

مثال زیر یک تصویر GIF را کاشته است.منطقه کاشت از طریق 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(بایگانی برچسب ها: IColorPalette)

این فرآیند کیفیت تصویر را بهبود می بخشد.کاهش پیوند رنگ و بهبود انتقال رنگ، منجر به یک صاف ترظاهری

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

Parameters

ditheringMethod DitheringMethod

روش دایتری

bitsCount int

بوته های نهایی برای محاسبه شمارش می شوند.

customPalette IColorPalette

پالت های معمولی برای دایتر کردن

Examples

مثال زیر یک تصویر 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;

                                                                                                                                // 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(رکتنگل، FilterOptionsBase)

یک فیلتر خاص را به منطقه مشخص شده تصویر اعمال کنید و بصری آن را تقویت کنید.کیفیت یا تغییر ظاهر آن به عنوان مورد نظر.این روش به طور انتخابی پردازشپیکسل ها در دایره ی تعیین شده، اجازه می دهد تا تنظیمات هدفمند انجام شود.در حالی که حفظ یکپارچگی از داده های تصویر اطراف.

public override void Filter(Rectangle rectangle, FilterOptionsBase options)

Parameters

rectangle Rectangle

راستگوی است.

options FilterOptionsBase

گزینه ها را

Examples

مثال زیر انواع مختلفی از فیلترها را برای یک تصویر 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()

بازگرداندن گزینه های مبتنی بر تنظیمات فایل اصلی، حیاتی برای حفظ وفاداریو سازگاری در پردازش تصویر و دستکاری.این روش اجازه می دهد بی سیمشامل پارامترهای خاص فایل در عملیات های بعدی، تضمین می کند کهارائه دقیق و انطباق با ویژگی های بومی تصویر.این کار می تواند برای حفظ عمق و سایر پارامترهای تصویر اصلی مفید باشد.به عنوان مثال، اگر ما یک تصویر PNG سیاه و سفید را با 1 بیتی در هر پیکسل بارگذاری کنیم و سپس آن را با استفاده ازAspose.Imaging.DataStreamSupporter.Save(System.String) روش، تصویر خروجی PNG با 8 بیتی در هر پیکسل تولید خواهد شد.برای جلوگیری از آن و ذخیره تصویر PNG با 1 بیتی در هر پیکسل، از این روش برای به دست آوردن گزینه های ذخیره مناسب و عبور آنها استفاده کنید.به روش Aspose.Imaging.Image.Save(System.String،Aspose.Imaging.ImageOptionsBase) به عنوان پارامتر دوم.

public override ImageOptionsBase GetOriginalOptions()

Returns

ImageOptionsBase

گزینه های مبتنی بر تنظیمات فایل اصلی.

Grayscale()

تبدیل یک تصویر به نمایندگی خاکستری آن، رنگ آن را تبدیل می کند.تصویر در یک نسخه خاکستری با حذف اطلاعات رنگی در حالی که حفظاین فرآیند تصویر را به سایه های خاکستری ساده می کند و آن را مناسب می سازد.برای کاربردهای مختلف مانند چاپ، پردازش اسناد و Grayscaleتحلیل

public override void Grayscale()

Examples

مثال زیر یک تصویر 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;

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

InsertBlock(بایگانی برچسب ها: IGIFBlock)

قرار دادن یک بلوک GIF جدید به شما اجازه می دهد تا داده های سفارشی را در یک موقعیت خاص اضافه کنید.این روش به شما اجازه می دهد تا بلوک های سفارشی را در یک مکان مورد نظر قرار دهید.موقعیت در تصویر GIF، ارائه انعطاف پذیری در سازماندهی و ساختارتصویر داده ها

public void InsertBlock(int index, IGifBlock block)

Parameters

index int

عناصر مبتنی بر صفر، که در آن بلوک قرار داده خواهد شد.

block IGifBlock

بلوک GIF اضافه می شود.

OnPaletteChanged(بایگانی برچسب ها: IColorPalette)

هنگامی که پالت تغییر می کند.

protected override void OnPaletteChanged(IColorPalette oldPalette, IColorPalette newPalette)

Parameters

oldPalette IColorPalette

پالت قدیمی

newPalette IColorPalette

پالت جدید است.

OnPaletteChanging(بایگانی برچسب ها: IColorPalette)

هنگامی که پالت تغییر می کند.

protected override void OnPaletteChanging(IColorPalette oldPalette, IColorPalette newPalette)

Parameters

oldPalette IColorPalette

پالت قدیمی

newPalette IColorPalette

پالت جدید است.

OrderBlocks()

ترتیب بلوک های GIF با توجه به مشخصات GIF تضمین می کند GIF مناسبترتیب و رعایت استاندارد.این فرآیند شامل ترتیببلیط در ردیف صحیح همانطور که در مشخصات تعریف شده است.به علاوه،ممکن است شامل حذف برخی از Aspose.Imaging.FileFormats.Gif.Blocks.GifGraphicsControlBlock موارد کهبا توجه به مشخصات GIF، مشخصات GIF به صورتاین تصویر به درستی ساختار یافته و با نمایش GIF سازگار خواهد بود.درخواست ها

public void OrderBlocks()

RemoveBlock(IGIFBlock)

حذف یک بلوک GIF داده های خاص را از تصویر حذف می کند و امکانتمیز کردن یا تغییر ساختار تصویر.این روش به شما اجازه می دهد تا از بین بردن ناخواستهیا بلوک های غیر ضروری، بهینه سازی تصویر GIF برای ذخیره سازی موثر.قابلیت حذف اطلاعات قدیمی از تصویر در حالی که حفظتمامیت و کیفیت آن

public void RemoveBlock(IGifBlock block)

Parameters

block IGifBlock

بلوک برای حذف

Remarks

نکته: فراموش نکنید که بلوک را نصب کنید اگر آن را به برخی دیگر از GifImage اضافه نکنید.

Resize(int، int، ResizeType)

این مطلب را در Aspose.Imaging.Image کلیک کنید.

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

Parameters

newWidth int

عرض جدید است.

newHeight int

ارتفاع جدید است.

resizeType ResizeType

نوع بازسازی است.

Examples

این مثال یک تصویر GIF را بارگذاری می کند و آن را با استفاده از روش های مختلف بازسازی بازسازی می کند.

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)

این مطلب را در Aspose.Imaging.Image کلیک کنید.

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

Parameters

newWidth int

عرض جدید است.

newHeight int

ارتفاع جدید است.

settings ImageResizeSettings

تنظیمات .

Examples

این مثال یک تصویر GIF را بارگذاری می کند و آن را با استفاده از تنظیمات مختلف بازسازی بازسازی می کند.

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)

بازسازی تصویر در حالی که در نظر گرفتن چارچوب کامل برای هر صفحه در یکGIF، در نتیجه جلوگیری از ظاهر آثار بالقوه.این روش ضروری استبرای حفظ یکپارچگی و کیفیت تصویر، به ویژه هنگامی که باGIF های متحرک یا ردیف های چارچوب

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

Parameters

newWidth int

عرض جدید است.

newHeight int

ارتفاع جدید است.

resizeType ResizeType

نوع بازسازی است.

ResizeProportional(int، int، ResizeType)

بازسازی نسبی نسبت جنبه تصویر را حفظ می کند در حالی که اندازه آن را تنظیم می کند، اطمینان حاصل می کند که تصویر به نظر نمی رسد کشیده یا خراب شده است. این روش تصویر را به طور نسبی بازسازی می کند، هر دو عرض و ارتفاع را با همان عامل مقیاس می دهد. بازسازی نسبی هر چارچوب را با توجه به نسبت newWidth’/width و newHeight’/height بازسازی می کند.

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

این مثال یک تصویر GIF را بارگذاری می کند، آن را 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)

داده ها را ذخیره کنید.

protected override void SaveData(Stream stream)

Parameters

stream Stream

جریان برای ذخیره اطلاعات به.

SetFrameTime(شوارت)

تنظیم طول هر چارچوب در میلی ثانیه، اطمینان از زمان بندی منسجماین روش به صورت یکنواخت زمان نمایش را برایهر چارچوب، اجازه کنترل دقیق سرعت انیمیشن.تغییر این مقدار تاخیر را برای تمام چارچوب ها بازسازی می کند.

public void SetFrameTime(ushort time)

Parameters

time ushort

مدت زمان چارچوب در میلی ثانیه

UpdateDimensions(int، int)

ابعاد تصویر را به روز کنید

protected override void UpdateDimensions(int newWidth, int newHeight)

Parameters

newWidth int

عرض تصویر جدید

newHeight int

ارتفاع تصویر جدید

 فارسی