Class GifImage

Class GifImage

Nama dari : Aspose.Imaging.FileFormats.Gif Pengumpulan: Aspose.Imaging.dll (25.4.0)

API untuk Graphical Interchange Format (GIF) file gambar menyediakanpengembang dengan alat yang beragam untuk memproses gambar raster yang dikompresi danGIF animasi. menawarkan fitur seperti pemrosesan metadata XMP, palet warnapengaturan, latar belakang dan kontrol warna yang transparan, pengaturan opacity, resize,crop, aplikasi filter, koreksi gamma, penyesuaian kontras, grayscaletransformasi, dan konversi ke format lain. API ini memungkinkanmanipulasi dan peningkatan gambar GIF untuk berbagai aplikasi.

[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

anggota yang diwarisi

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

Ekspor bagian animasi dari gambar GIF berdasarkan interval waktu.

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

Contoh ini menunjukkan cara membuat gambar GIF dan menyimpannya ke file.

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

Buat gambar GIF berbilang halaman menggunakan gambar raster satu halaman.

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 dan IColorPalette)

Memulai objek Aspose.Imaging.FileFormats.Gif.GifImage baru dengan parameter yang ditentukan untukframe pertama dan palet global. mulai mengelola gambar GIF dengan cepat, memastikanPerwakilan yang tepat dengan pengaturan yang dapat disesuaikan untuk hasil yang optimal.

public GifImage(GifFrameBlock firstFrame, IColorPalette globalPalette)

Parameters

firstFrame GifFrameBlock

Frame pertama untuk memulai gambar gif dengan.

globalPalette IColorPalette

Catatan jika kedua firstFrame’ dan globalPalette’ adalah null maka default global palette digunakan.

Examples

Contoh ini menunjukkan cara membuat gambar GIF dengan palet tersuai dan menyimpannya ke file.

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’ tidak bisa null

ArgumentException

firstFrame’ sudah tergolong dalam beberapa gambar lain.

GifImageException

globalPalette’ yang ditentukan harus mengandung jumlah entri yang setara dengan kekuatan 2. minimal ukuran palet adalah 2, maksimum adalah 256.

GifImage(GifFrameBlock)

Membuat gambar GIF menjadi mudah dengan Aspose.Imaging.FileFormats.Gif.GifImageDengan hanya parameter Frame pertama, ia memasuki dunia dinamik.Komunikasi visual

public GifImage(GifFrameBlock firstFrame)

Parameters

firstFrame GifFrameBlock

Frame pertama untuk memulai gambar gif dengan.

Examples

Contoh ini menunjukkan cara membuat gambar GIF dan menyimpannya ke file.

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

Contoh berikut menunjukkan cara menyusun gambar GIF animasi dari blok GIF individu.

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’ tidak bisa null

ArgumentException

firstFrame’ sudah tergolong dalam beberapa gambar lain.

GifImageException

Palet yang ditentukan harus mengandung jumlah entri yang setara dengan kekuatan 2. ukuran minimum palet adalah 2, maksimum adalah 256.

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

Memulai dengan mudah dengan Aspose.Imaging.FileFormats.Gif.GifImage constructor.metode sederhana, Anda dapat menyelam ke dalam membuat animasi GIF dengan mudah.pertamaFrame, globalPalette, paletteColorResolution, aspectRatio, dan lain-lainparameter, dan Anda siap untuk membawa visual Anda ke kehidupan.

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

Parameters

firstFrame GifFrameBlock

Frame pertama untuk memulai gambar gif dengan.

globalPalette IColorPalette

Catatan jika kedua firstFrame’ dan globalPalette’ adalah null maka default global palette digunakan.

isPaletteSorted bool

Jika ditetapkan untuk ‘kebenaran’ palet disusun. catatan parameter digunakan ketika globalPalette’ tidak nol.

paletteColorResolution byte

Perhatikan parameter yang digunakan ketika globalPalette’ tidak nol.

paletteBackgroundColorIndex byte

Indeks warna latar belakang palet.

aspectRatio byte

Aspek yang relatif.

hasTrailer bool

Jika ditetapkan untuk ‘kebenaran’ gambar gif memiliki trailer jika tidak tidak ada trailer ditulis di akhir arus.

Exceptions

ArgumentNullException

firstFrame’ tidak bisa null

ArgumentException

firstFrame’ sudah tergolong dalam beberapa gambar lain.

GifImageException

globalPalette’ yang ditentukan harus mengandung jumlah entri yang setara dengan kekuatan 2. minimal ukuran palet adalah 2, maksimum adalah 256.

Properties

ActiveFrame

Mengelola dan memanipulasi bingkai dengan properti ini, memungkinkan navigasi lancar danmengubah bingkai aktif dalam gambar GIF.

public GifFrameBlock ActiveFrame { get; set; }

Nilai Properti

GifFrameBlock

Examples

Contoh berikut menunjukkan cara menghapus semua blok dari gambar 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

Mengelola warna latar belakang gambar GIF dengan sifat ini. Anda dapat mengatur ataumengambil warna latar belakang untuk memastikan konsistensi dan meningkatkan daya tarik visual.

public override Color BackgroundColor { get; set; }

Nilai Properti

Color

BackgroundColorIndex

Mengontrol indeks warna latar belakang dari gambar GIF menggunakan sifat ini.mengambil indeks untuk mengekalkan konsistensi atau mencapai efek visual yang diinginkan.

public byte BackgroundColorIndex { get; set; }

Nilai Properti

byte

Blocks

Dapatkan akses ke blok GIF dengan mudah dengan properti ini, memudahkanPemulihan dan manipulasi struktur data dasar dari gambar.

public IGifBlock[] Blocks { get; }

Nilai Properti

IGifBlock [ ]

FileFormat

Memulihkan format file dengan mudah dengan sifat ini. ini adalah Anda pergi ke sumberuntuk mengidentifikasi format file Anda. terintegrasi dengan lancar ke dalam aliran kerja Anda,memberikan informasi penting tanpa adanya kekacauan.

public override FileFormat FileFormat { get; }

Nilai Properti

FileFormat

HasBackgroundColor

Properti ini menentukan apakah gambar GIF mengandung warna latar belakang.benar, itu menunjukkan bahwa gambar itu termasuk warna latar belakang.

public override bool HasBackgroundColor { get; }

Nilai Properti

bool

HasTrailer

Mengelola kehadiran trailer dalam file GIF Anda dengan properti ini.perlu untuk memeriksa apakah trailer ada atau menetapkan kehadirannya, properti ini memudahkanPastikan file GIF Anda terstruktur dan mematuhi fitur intuitif ini.

public bool HasTrailer { get; set; }

Nilai Properti

bool

HasTransparentColor

Tentukan apakah bingkai aktif gambar GIF mengandung warna transparan.Properti ini memberikan cara yang nyaman untuk memeriksa transparansi dalam gambar.

public override bool HasTransparentColor { get; set; }

Nilai Properti

bool

ImageOpacity

Mengurangi ketidakselesaan bingkai aktif di dalam gambar, memberikan wawasantingkat transparansi. sifat ini sangat berguna untuk memahamitingkat transparansi atau ketidakselesaan bingkai aktif dalam gambar.

public override float ImageOpacity { get; }

Nilai Properti

float

IsInterlaced

Menentukan apakah gambar terhubung, mempengaruhi paparan saat muat.Properti menawarkan wawasan tentang perilaku rendering gambar, penting untukMengoptimalkan strategi muatan dan meningkatkan pengalaman menonton secara keseluruhan.

public bool IsInterlaced { get; }

Nilai Properti

bool

IsPaletteSorted

Mengontrol sorting palet dalam gambar GIF Anda menggunakan properti ini.Anda perlu memeriksa apakah palet disusun atau menetapkan perilaku disusun, iniProperti menyediakan cara yang mudah untuk mengelola organisasi palet diUntuk file GIF.

public bool IsPaletteSorted { get; set; }

Nilai Properti

bool

LoopsCount

Memulihkan penghitungan loop dengan mudah dengan sifat ini. jika gambar GIF Anda termasukinformasi loop, properti ini memberi Anda akses cepat ke jumlah loop, memungkinkanAnda untuk mengelola perilaku looping dalam file GIF Anda.

public int LoopsCount { get; set; }

Nilai Properti

int

PageCount

Mengembalikan jumlah total halaman yang terkandung di dalam gambar dengan iniProperti sederhana. ideal untuk dengan cepat menilai ukuran konten gambar.

public override int PageCount { get; }

Nilai Properti

int

Pages

Dapatkan akses ke halaman dalam gambar melalui properti yang nyaman ini,memungkinkan navigasi dan manipulasi halaman individu tanpa batas sesuai kebutuhan.

public override Image[] Pages { get; }

Nilai Properti

Image [ ]

PaletteColorResolutionBits

Mengelola resolusi warna palet gambar GIF Anda dengan sifat ini.Jumlah bit yang digunakan untuk mewakili warna dalam palet, memberikan kontrol yang baikKetebalan warna dan kualitas gambar.

public byte PaletteColorResolutionBits { get; set; }

Nilai Properti

byte

PixelAspectRatio

Mengelola proporsi aspek piksel dari gambar GIF dengan sifat ini.proporsi aspek untuk memastikan rendering yang tepat dan menjaga kesetiaan visual.

public byte PixelAspectRatio { get; set; }

Nilai Properti

byte

TransparentColor

Memulihkan warna transparan dari bingkai aktif dalam gambar GIF.memungkinkan Anda untuk mengakses warna tertentu yang telah ditetapkan sebagai transparandalam rangka kerja aktif saat ini.

public override Color TransparentColor { get; }

Nilai Properti

Color

XmpData

Mengelola metadata XMP dengan properti ini. apakah Anda mendapatkan metadata yang adaatau memperbarui dengan informasi baru, properti ini mempercepat proses.Metadata Anda terorganisir dan dapat diakses, memastikan bahwa file Anda mengandungInformasi yang relevan yang dibutuhkan.

public override XmpPacketWrapper XmpData { get; set; }

Nilai Properti

XmpPacketWrapper

Methods

AddBlock(Keberadaan IGIFBlock)

Menambahkan blok GIF baru memungkinkan Anda untuk memasukkan data tambahan dalam gambar.Metode ini memungkinkan Anda untuk melampirkan blok tersuai ke gambar GIF, yang dapatMengandungi berbagai jenis informasi.

public void AddBlock(IGifBlock block)

Parameters

block IGifBlock

Blok GIF untuk ditambahkan.

Examples

Contoh berikut menunjukkan cara menyusun gambar GIF animasi dari blok GIF individu.

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)

Mengintegrasikan halaman baru secara tidak sengaja ke dalam gambar yang ada, meningkatkan kontennyadan memperluas jangkauan. metode ini meningkatkan koleksi gambar dengan tambahanmempromosikan kreativitas dan fleksibilitas dalam pengelolaan dan komposisi gambar.

public void AddPage(RasterImage page)

Parameters

page RasterImage

Halaman yang harus ditambahkan.

Examples

Buat gambar GIF berbilang halaman menggunakan gambar raster satu halaman.

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)

Menetapkan kecerahan gambar sesuai dengan parameter kecerahan yang ditentukan. metode ini mengubah kecerahan keseluruhan gambar secara seragam, meningkatkan atau mengurangi kecerahan keseluruhan untuk mencapai efek yang diinginkan.

public override void AdjustBrightness(int brightness)

Parameters

brightness int

Nilai kecerahan

Examples

Contoh berikut melakukan koreksi kecerahan gambar 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(kapal)

menyesuaikan kontras gambar, meningkatkan atau mengurangi perbedaan dalamkecerahan antara piksel. metode ini mengubah julat nada keseluruhan gambar,membuat area yang lebih gelap lebih gelap dan area yang lebih terang lebih terang untuk meningkatkan kejelasan visualdan detailnya.

public override void AdjustContrast(float contrast)

Parameters

contrast float

Nilai kontras (dalam rentang [-100; 100])

Examples

Contoh berikut melakukan koreksi kontras gambar 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

Tidak dapat mengubah kontras. Frame index: " + frameIndex

AdjustGamma(kapal)

Meningkatkan kualitas gambar dengan menerapkan koreksi gamma. metode ini menyesuaikan warnaGamma dari gambar untuk mencapai ketelusan visual optimal. mengubah nilai gammadari setiap piksel, yang menghasilkan rendisi warna yang lebih baik dan penampilan gambar secara keseluruhan.

public override void AdjustGamma(float gamma)

Parameters

gamma float

Gamma untuk koordinat saluran merah, hijau dan biru

Examples

Contoh berikut melakukan koreksi gamma dari gambar 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(Kapal, Kapal dan Kapal)

Gamma-koreksi gambar berlaku penyesuaian nonlinear pada nilai pixel,meningkatkan atau mengurangi kecerahan berdasarkan koefisien yang ditentukan untuk merah,hijau, dan saluran biru. metode ini membantu untuk memperbaiki keseimbangan warna danpencahayaan gambar, meningkatkan penampilannya secara keseluruhan dan kualitas visual.

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

Parameters

gammaRed float

Gamma untuk Red Channel Coefficient

gammaGreen float

Gamma untuk Green Channel Coefficient

gammaBlue float

Gamma untuk Blue Channel Coefficient

Examples

Contoh berikut melakukan koreksi gamma dari gambar GIF yang menerapkan koefisien yang berbeda untuk komponen warna.

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

Binarisasi gambar menggunakan algoritma sempadan adaptif Bradley denganIntegral image thresholding adalah metode untuk mengkonversi gambar grayscale menjadiGambar biner. algoritma ini menghitung batas lokal untuk setiap piksel berdasarkanintensitas rata-rata dari piksel sekitar di dalam jendela tertentu.Adaptif menyesuaikan batas berdasarkan intensitas pixel lokal, BradleyMetode ini efektif dalam menangani variasi dalam pencahayaan dan kontras di seluruh gambar.

public override void BinarizeBradley(double brightnessDifference)

Parameters

brightnessDifference double

Perbedaan kecerahan antara piksel dan rata-rata jendela s x s dari piksel yang berpusat di sekitar piksel ini.

BinarizeFixed(byte)

Binarisasi gambar dengan batas yang sudah ditentukan mengubah warna atau warna kelabu.Gambar dalam gambar biner, di mana setiap piksel diklasifikasikan sebagai hitam atau putihberdasarkan apakah nilai intensitasnya melebihi batas yang ditetapkan.

public override void BinarizeFixed(byte threshold)

Parameters

threshold byte

Jika nilai kelabu yang sepadan dari piksel lebih besar dari batas, nilai 255 akan ditugaskan kepadanya, 0 sebaliknya.

Examples

Contoh berikut binarisasi gambar GIF dengan batas yang telah ditentukan. gambar binarisasi hanya mengandung 2 warna - hitam dan putih.

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

Binarisasi gambar dengan Otsu thresholding adalah metode yang digunakan untukmenentukan nilai ambang optimal untuk mengkonversi gambar grafis menjadiGambar biner. algoritma batas Otsu menghitung batas yangMengurangi variasi intra-kelas intensitas piksel dalam dua hasilkelas (sebelum dan latar belakang). teknik ini sangat berguna ketikanilai batas optimal tidak diketahui dan harus ditentukan secara adaptif berdasarkanpada histogram gambar.

public override void BinarizeOtsu()

Examples

Contoh berikut binarisasi gambar GIF dengan sempadan Otsu. gambar binarisasi hanya mengandung 2 warna - hitam dan putih.

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

Membersihkan semua blok GIF menghapus semua data yang ada yang disimpan di dalam gambar.Operasi ini secara efektif mengembalikan gambar ke keadaan kosong, menghapus semuasebelum ini ditambahkan blok. gunakan metode ini ketika Anda perlu memulai segar dengan yang bersihSlate untuk membuat atau mengubah gambar GIF.

public void ClearBlocks()

Examples

Contoh berikut menunjukkan cara menghapus semua blok dari gambar 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)

Menanam gambar menggunakan area rektangle yang ditentukan. operasi ini menghapus eksternalbagian dari gambar, meninggalkan hanya wilayah yang dipilih yang ditentukan oleh rektangle.

public override void Crop(Rectangle rectangle)

Parameters

rectangle Rectangle

dengan rektangle.

Examples

Contoh berikut menanam gambar GIF. area penanaman ditentukan melalui Aspose.Imaging.Rectangle.

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

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

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

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

Dither(DitheringMetode, int, IColorPalette)

Mengaplikasikannya pada gambar saat ini. proses ini meningkatkan kualitas gambar denganmengurangi banding warna dan meningkatkan transisi warna, yang menghasilkan lebih haluspenampilan

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

Parameters

ditheringMethod DitheringMethod

Metode yang dihitung.

bitsCount int

Bits terakhir menghitung untuk dikhitung.

customPalette IColorPalette

Pakaian yang disesuaikan untuk dikeringkan.

Examples

Contoh berikut memuat gambar GIF dan melakukan threshold dan floyd dithering menggunakan kedalaman palet yang berbeda.

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

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

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

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

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

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

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

Filter(Rectangle, FilterOptionsBase)

Gunakan filter spesifik ke area yang ditentukan dari gambar, meningkatkan visualnyakualitas atau mengubah penampilannya seperti yang diinginkan. metode ini secara selektifpiksel dalam rektangle yang ditentukan, memungkinkan penyesuaian yang ditargetkan untuk dilakukansambil mempertahankan integritas data gambar di sekitarnya.

public override void Filter(Rectangle rectangle, FilterOptionsBase options)

Parameters

rectangle Rectangle

dengan rektangle.

options FilterOptionsBase

dengan opsi tersebut.

Examples

Contoh berikut menggunakan berbagai jenis filter untuk gambar 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()

Memulihkan pilihan berdasarkan pengaturan file asli, penting untuk menjaga kesetiaandan konsistensi dalam pemrosesan gambar dan manipulasi. metode ini memungkinkan tanpamengintegrasikan parameter spesifik file ke dalam operasi berikutnya, memastikanpenyerahan yang tepat dan ketergantungan terhadap karakteristik inherent dari gambar.Ini dapat membantu untuk menjaga kedalaman bit dan parameter lain dari gambar asli tidak berubah.Misalnya, jika kita memuat gambar PNG hitam dan putih dengan 1 bit per piksel dan kemudian menyimpannya menggunakanMetode Aspose.Imaging.DataStreamSupporter.Save(System.String), hasil PNG gambar dengan 8-bit per piksel akan diproduksi.Untuk menghindari dan menyimpan gambar PNG dengan 1 bit per piksel, gunakan metode ini untuk mendapatkan opsi penyimpanan yang sesuai dan melewati merekauntuk Aspose.Imaging.Image.Save(System.String,Aspose.Imaging.ImageOptionsBase) metode sebagai parameter kedua.

public override ImageOptionsBase GetOriginalOptions()

Returns

ImageOptionsBase

Pilihan berdasarkan pengaturan file asli.

Grayscale()

Transformasi gambar menjadi representasi kelabu mengubah warnagambar dalam versi kelabu dengan menghapus informasi warna sambil menyimpanProses ini menyederhanakan gambar menjadi bayangan kelabu, menjadikannya cocokuntuk berbagai aplikasi seperti pencetakan, pemrosesan dokumen, dan grayscaledengan analisis.

public override void Grayscale()

Examples

Contoh berikut mengubah gambar GIF berwarna menjadi representasi grayscale.Grayscale gambar terdiri secara eksklusif dari bayangan kelabu dan hanya membawa informasi intensitas.

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

Menetapkan blok GIF baru memungkinkan Anda untuk menambahkan data tersuai di posisi tertentuMetode ini memungkinkan Anda untuk menempatkan blok yang disesuaikan pada yang diinginkan.lokasi dalam gambar GIF, memberikan fleksibilitas dalam mengatur dan mengaturData gambar.

public void InsertBlock(int index, IGifBlock block)

Parameters

index int

Elemen berbasis nol, di mana blok akan dimasukkan.

block IGifBlock

Blok GIF untuk ditambahkan.

OnPaletteChanged(Perbedaannya dengan IColorPalette)

Tanggapan ketika palet diubah.

protected override void OnPaletteChanged(IColorPalette oldPalette, IColorPalette newPalette)

Parameters

oldPalette IColorPalette

dengan palet lama.

newPalette IColorPalette

dan palet baru.

OnPaletteChanging(Perbedaannya dengan IColorPalette)

Ia dipanggil ketika palet berubah.

protected override void OnPaletteChanging(IColorPalette oldPalette, IColorPalette newPalette)

Parameters

oldPalette IColorPalette

dengan palet lama.

newPalette IColorPalette

dan palet baru.

OrderBlocks()

Mengatur blok GIF sesuai dengan spesifikasi GIF memastikan GIF yang tepatdisusun dan mematuhi standar. proses ini melibatkan penyelenggaraanblok dalam urutan yang benar seperti yang ditakrifkan oleh spesifikasi.dapat melibatkan penghapusan beberapa Aspose.Imaging.FileFormats.Gif.Blocks.GifGraphicsControlBlock instans yangtidak diperlukan untuk tataletak akhir.Dengan mematuhi spesifikasi GIF,Gambar yang dihasilkan akan terstruktur dengan benar dan kompatibel dengan pemandangan GIFAplikasi yang

public void OrderBlocks()

RemoveBlock(Keberadaan IGIFBlock)

Menghapus blok GIF menghapus data spesifik dari gambar, menawarkan kemampuan untukmembersihkan atau mengubah struktur gambar. metode ini memungkinkan Anda untuk menghapus yang tidak diinginkanatau blok yang tidak perlu, mengoptimalkan gambar GIF untuk penyimpanan yang efisien.Fungsi untuk menghapus informasi yang usang dari gambar sambil mempertahankanintegritas dan kualitasnya.

public void RemoveBlock(IGifBlock block)

Parameters

block IGifBlock

blok yang harus dihapus.

Remarks

Catatan: Jangan lupa untuk menyimpan blok jika Anda tidak akan menambahkan ke beberapa GifImage lainnya.

Resize(int, int, resizeType)

Mengalihkan contoh Aspose.Imaging.Image ini.

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

Parameters

newWidth int

dengan lebar yang baru.

newHeight int

ketinggian yang baru.

resizeType ResizeType

dengan jenis resize.

Examples

Contoh ini memuat gambar GIF dan menggunakannya kembali menggunakan berbagai metode resizing.

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)

Mengalihkan contoh Aspose.Imaging.Image ini.

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

Parameters

newWidth int

dengan lebar yang baru.

newHeight int

ketinggian yang baru.

settings ImageResizeSettings

Pengaturan yang

Examples

Contoh ini memuat gambar GIF dan menggunakannya kembali menggunakan berbagai pengaturan resizing.

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)

Mengembalikan gambar sambil mempertimbangkan bingkai penuh untuk setiap halaman diGIF, dengan demikian mencegah potensi artefak dari muncul. metode ini pentinguntuk menjaga integritas dan kualitas gambar, terutama ketika berurusan denganGIF animasi atau sekuensi bingkai.

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

Parameters

newWidth int

dengan lebar yang baru.

newHeight int

ketinggian yang baru.

resizeType ResizeType

dengan jenis resize.

ResizeProportional(int, int, resizeType)

Resize proporsional mempertahankan proporsi aspek dari gambar sambil menyesuaikan saiznya, memastikan bahwa gambar tidak terlihat meluas atau rusak. metode ini resize gambar secara proporsional, mengukur kedalaman dan ketinggian dengan faktor yang sama.Resize proporsional akan resize setiap bingkai sesuai dengan proporsi newWidth’/width dan newHeight’/height.

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

Parameters

newWidth int

dengan lebar yang baru.

newHeight int

ketinggian yang baru.

resizeType ResizeType

dengan jenis resize.

Rotate(Bulu, Bulu dan Warna)

Metode ini memutar gambar di sekitar titik pusatnya.Dengan menentukan rotasisudut, Anda dapat memutar gambar dengan cara jam atau counter jam untuk mencapaiorientasi yang diinginkan. rotasi ini membantu menyesuaikan presentasi gambar atauMenyelaras tanpa mengganggu kontennya.

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

Parameters

angle float

Sudut berputar dalam derajat. nilai positif akan berputar secara jam.

resizeProportionally bool

Jika Anda menetapkan ‘kebenaran’ Anda akan memiliki ukuran gambar Anda berubah sesuai dengan proyeksi rektangle (titik sudut) yang ditarik di tempat lain yang meninggalkan dimensi tidak disentuh dan hanyainternal konten gambar ditarik.

backgroundColor Color

warna dari latar belakang.

RotateFlip(RotateFlipType)

Melakukan rotasi, flipping, atau keduanya pada bingkai aktif secara eksklusif.mengaplikasikan transformasi hanya pada kerangka yang aktif saat ini dari gambar,memelihara integritas kerangka lain dalam urutan.

public override void RotateFlip(RotateFlipType rotateFlipType)

Parameters

rotateFlipType RotateFlipType

Jenis flip rotasi.

Examples

Contoh ini memuat gambar GIF, memutarnya dengan 90 derajat jam dan secara opsional memutar gambar secara horizontal dan/atau vertikal.

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)

Simpan data tersebut.

protected override void SaveData(Stream stream)

Parameters

stream Stream

Aliran untuk menyimpan data ke.

SetFrameTime(Kemenangan)

Menetapkan durasi setiap bingkai dalam milisekund, memastikan timing yang konsistensepanjang urutan gambar. metode ini secara seragam menetapkan waktu paparan untukSetiap frame, memungkinkan kontrol yang tepat atas kecepatan animasi.Mengubah nilai ini akan memperpanjang keterlambatan untuk semua bingkai.

public void SetFrameTime(ushort time)

Parameters

time ushort

Waktu jangka panjang dalam milisekunder.

UpdateDimensions(dengan int, int)

Mengemas kini dimensi gambar.

protected override void UpdateDimensions(int newWidth, int newHeight)

Parameters

newWidth int

Gambar baru yang luas.

newHeight int

Ketinggian gambar baru.

 Indonesia