Class ApngImage

Class ApngImage

Název místa: Aspose.Imaging.FileFormats.Apng Shromáždění: Aspose.Imaging.dll (25.4.0)

API pro animované sítě PNG (Animated Portable Network Graphics) image fileFormát je všestranným řešením pro vývojáře, kteří chtějí integrovatanimovaný obsah do jejich aplikací.Tento API nabízí rozsáhléovládání rámových nastavení, které uživatelům umožňují definovat rámové specifikaceparametry, včetně délky trvání a nastavení souborů PNG.Nástroj bohatý na funkce, můžete bez námahy spravovat a optimalizovat displejsnímky APNG, dovoz a vývoz snímků, posílení dynamiky ainteraktivní aspekty vašich aplikac.

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

Inheritance

object DisposableObject DataStreamSupporter Image RasterImage RasterCachedImage RasterCachedMultipageImage ApngImage

Implements

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

Dědiční členové

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

Následující příklad ukazuje, jak exportovat formát souboru APNG z jiného neanimovaného multi-stránkového formátu.

using Aspose.Imaging;
                                                                                                                     using Aspose.Imaging.ImageOptions;

                                                                                                                     using (Image image = Image.Load("img4.tif")) {
                                                                                                                         // Setting up the default frame duration
                                                                                                                         image.Save("img4.tif.500ms.png", new ApngOptions() { DefaultFrameTime = 500 }); // 500 ms
                                                                                                                         image.Save("img4.tif.250ms.png", new ApngOptions() { DefaultFrameTime = 250 }); // 250 ms
                                                                                                                     }

Následující příklad ukazuje, jak exportovat do formátu souboru APNG.

using Aspose.Imaging;
                                                                         using Aspose.Imaging.ImageOptions;

                                                                         using (Image image = Image.Load("Animation1.webp")) {
                                                                             // Export to APNG animation with unlimited animation cycles as default
                                                                             image.Save("Animation1.webp.png", new ApngOptions());
                                                                             // Setting up animation cycles
                                                                             image.Save("Animation2.webp.png", new ApngOptions() { NumPlays = 5 }); // 5 cycles
                                                                         }

Následující příklad ukazuje, jak vytvořit obrázek APNG z jiného obrázku na jedné stránce.

using Aspose.Imaging;
                                                                                                      using Aspose.Imaging.ImageOptions;
                                                                                                      using Aspose.Imaging.FileFormats.Apng;

                                                                                                      const int AnimationDuration = 1000; // 1 s
                                                                                                      const int FrameDuration = 70; // 70 ms
                                                                                                      using (RasterImage sourceImage = (RasterImage)Image.Load("not_animated.png"))
                                                                                                      {
                                                                                                          ApngOptions createOptions = new ApngOptions
                                                                                                          {
                                                                                                              Source = new FileCreateSource("raster_animation.png", false),
                                                                                                              DefaultFrameTime = (uint)FrameDuration,
                                                                                                              ColorType = PngColorType.TruecolorWithAlpha,
                                                                                                          };

                                                                                                          using (ApngImage apngImage = (ApngImage)Image.Create(
                                                                                                              createOptions,
                                                                                                              sourceImage.Width,
                                                                                                              sourceImage.Height))
                                                                                                          {
                                                                                                              // It is possible to set image default frame time there: apngImage.DefaultFrameTime = (uint)FrameDuration;

                                                                                                              int numOfFrames = AnimationDuration / FrameDuration;
                                                                                                              int numOfFrames2 = numOfFrames / 2;

                                                                                                              // Cleaning because the image contains one frame by default
                                                                                                              apngImage.RemoveAllFrames();

                                                                                                              // add first frame
                                                                                                              apngImage.AddFrame(sourceImage);

                                                                                                              // add intermediate frames
                                                                                                              for (int frameIndex = 1; frameIndex < numOfFrames - 1; ++frameIndex)
                                                                                                              {
                                                                                                                  apngImage.AddFrame(sourceImage);
                                                                                                                  ApngFrame lastFrame = (ApngFrame)apngImage.Pages[apngImage.PageCount - 1];
                                                                                                                  float gamma = frameIndex >= numOfFrames2 ? numOfFrames - frameIndex - 1 : frameIndex;
                                                                                                                  lastFrame.AdjustGamma(gamma);
                                                                                                              }

                                                                                                              // add last frame
                                                                                                              apngImage.AddFrame(sourceImage);

                                                                                                              apngImage.Save();
                                                                                                          }
                                                                                                      }

Constructors

ApngImage(Výsledky, int, int)

Začněte pracovat s třídou Aspose.Imaging.FileFormats.Apng.ApngImage iniciovánímNový příklad bez námahy. ideální pro vývojáře, kteří chtějí začítPoužití ApngImage objektů rychle a efektivně ve svých projektech.

public ApngImage(ApngOptions options, int width, int height)

Parameters

options ApngOptions

Tyto možnosti.

width int

A šířka.

height int

na výšku.

Properties

DefaultFrameTime

Doba trvání předvoleného rámu se snadno upraví pro vytváření nových rámů sTato flexibilní vlastnost je ideální pro vývojáře, kteří se chtějí přizpůsobit časování rámuefektivně v jejich animacích.

public uint DefaultFrameTime { get; set; }

Hodnota nemovitosti

uint

Examples

Následující příklad ukazuje, jak vytvořit obrázek APNG z jiného obrázku na jedné stránce.

using Aspose.Imaging;
                                                                                                      using Aspose.Imaging.ImageOptions;
                                                                                                      using Aspose.Imaging.FileFormats.Apng;

                                                                                                      const int AnimationDuration = 1000; // 1 s
                                                                                                      const int FrameDuration = 70; // 70 ms
                                                                                                      using (RasterImage sourceImage = (RasterImage)Image.Load("not_animated.png"))
                                                                                                      {
                                                                                                          ApngOptions createOptions = new ApngOptions
                                                                                                          {
                                                                                                              Source = new FileCreateSource("raster_animation.png", false),
                                                                                                              DefaultFrameTime = (uint)FrameDuration,
                                                                                                              ColorType = PngColorType.TruecolorWithAlpha,
                                                                                                          };

                                                                                                          using (ApngImage apngImage = (ApngImage)Image.Create(
                                                                                                              createOptions,
                                                                                                              sourceImage.Width,
                                                                                                              sourceImage.Height))
                                                                                                          {
                                                                                                              // It is possible to set image default frame time there: apngImage.DefaultFrameTime = (uint)FrameDuration;

                                                                                                              int numOfFrames = AnimationDuration / FrameDuration;
                                                                                                              int numOfFrames2 = numOfFrames / 2;

                                                                                                              // Cleaning because the image contains one frame by default
                                                                                                              apngImage.RemoveAllFrames();

                                                                                                              // add first frame
                                                                                                              apngImage.AddFrame(sourceImage);

                                                                                                              // add intermediate frames
                                                                                                              for (int frameIndex = 1; frameIndex < numOfFrames - 1; ++frameIndex)
                                                                                                              {
                                                                                                                  apngImage.AddFrame(sourceImage);
                                                                                                                  ApngFrame lastFrame = (ApngFrame)apngImage.Pages[apngImage.PageCount - 1];
                                                                                                                  float gamma = frameIndex >= numOfFrames2 ? numOfFrames - frameIndex - 1 : frameIndex;
                                                                                                                  lastFrame.AdjustGamma(gamma);
                                                                                                              }

                                                                                                              // add last frame
                                                                                                              apngImage.AddFrame(sourceImage);

                                                                                                              apngImage.Save();
                                                                                                          }
                                                                                                      }

FileFormat

Rychlý přístup k informacím o formátu souboru s touto výhodnou vlastnost.Ideální pro vývojáře, kteří potřebují získat podrobnosti o formátuJejich Apng soubory snadno.

public override FileFormat FileFormat { get; }

Hodnota nemovitosti

FileFormat

Interlaced

Rychle zjistit, zda je tento objekt Aspose.Imaging.FileFormats.Png.PngImage propojens touto pohodlnou vlastností. ideální pro vývojáře, kteří potřebují kontrolovatStát propojení PNG snímků snadno.

public bool Interlaced { get; }

Hodnota nemovitosti

bool

NumPlays

Neúspěšně ovládat počet krát, kdy vaše animace běží s tímtouniverzální vlastnost. ideální pro vývojáře, kteří hledají přesnou kontrolu nadanimace chování, s podporou pro nekonečné looping v případěHodnoty se rovnají 0.

public int NumPlays { get; set; }

Hodnota nemovitosti

int

PageCount

Obnovte celkový počet stránek ve vašem obrázkovém souboru bez námahy s touto vlastnost.Ideální pro vývojáře, kteří potřebují rychlý přístup k informacím o počtu stránek.

public override int PageCount { get; }

Hodnota nemovitosti

int

Pages

Bezproblémový přístup k stránkám vašeho obrazu s touto pohodlnou vlastnost.Ideální pro vývojáře, kteří hledají rychlý a snadný přístup k jednotlivým stránkám pro manipulaci.

public override Image[] Pages { get; }

Hodnota nemovitosti

Image []a[]

XmpData

Snadno spravovat metadata XMP spojené s vašimi soubory pomocí tohotouniverzální vlastnost. ideální pro vývojáře, kteří hledají přístup nebo aktualizaciInformace o metadatech jsou snadn.

public override XmpPacketWrapper XmpData { get; set; }

Hodnota nemovitosti

XmpPacketWrapper

Methods

AddFrame()

Snadno přidejte nový rám do konce vaší kolekce rámu s tímtoJednoduchá metoda. ideální pro vývojáře, kteří chtějí rozšířit svéDynamické shromažďování rámů pro animace s více rámovými obrázky.Nový rám bude vytvořen podle velikosti aktuálního obrazu.

public ApngFrame AddFrame()

Returns

ApngFrame

Nově vytvořený APNG rám.

AddFrame(RasterImage)

Snadno rozšiřujte sbírku rámů tím, že do konce přidáte nový ráms touto intuitivní metodou. ideální pro vývojáře, kteří se snaží zlepšit svéAnimace multimediálních snímků dynamicky.Obsah nového rámu bude vyplněn z uvedeného obrázku.

public void AddFrame(RasterImage frameImage)

Parameters

frameImage RasterImage

Obrázek z rámu.

Examples

Následující příklad ukazuje, jak vytvořit obrázek APNG z jiného obrázku na jedné stránce.

using Aspose.Imaging;
                                                                                                      using Aspose.Imaging.ImageOptions;
                                                                                                      using Aspose.Imaging.FileFormats.Apng;

                                                                                                      const int AnimationDuration = 1000; // 1 s
                                                                                                      const int FrameDuration = 70; // 70 ms
                                                                                                      using (RasterImage sourceImage = (RasterImage)Image.Load("not_animated.png"))
                                                                                                      {
                                                                                                          ApngOptions createOptions = new ApngOptions
                                                                                                          {
                                                                                                              Source = new FileCreateSource("raster_animation.png", false),
                                                                                                              DefaultFrameTime = (uint)FrameDuration,
                                                                                                              ColorType = PngColorType.TruecolorWithAlpha,
                                                                                                          };

                                                                                                          using (ApngImage apngImage = (ApngImage)Image.Create(
                                                                                                              createOptions,
                                                                                                              sourceImage.Width,
                                                                                                              sourceImage.Height))
                                                                                                          {
                                                                                                              // It is possible to set image default frame time there: apngImage.DefaultFrameTime = (uint)FrameDuration;

                                                                                                              int numOfFrames = AnimationDuration / FrameDuration;
                                                                                                              int numOfFrames2 = numOfFrames / 2;

                                                                                                              // Cleaning because the image contains one frame by default
                                                                                                              apngImage.RemoveAllFrames();

                                                                                                              // add first frame
                                                                                                              apngImage.AddFrame(sourceImage);

                                                                                                              // add intermediate frames
                                                                                                              for (int frameIndex = 1; frameIndex < numOfFrames - 1; ++frameIndex)
                                                                                                              {
                                                                                                                  apngImage.AddFrame(sourceImage);
                                                                                                                  ApngFrame lastFrame = (ApngFrame)apngImage.Pages[apngImage.PageCount - 1];
                                                                                                                  float gamma = frameIndex >= numOfFrames2 ? numOfFrames - frameIndex - 1 : frameIndex;
                                                                                                                  lastFrame.AdjustGamma(gamma);
                                                                                                              }

                                                                                                              // add last frame
                                                                                                              apngImage.AddFrame(sourceImage);

                                                                                                              apngImage.Save();
                                                                                                          }
                                                                                                      }

Exceptions

ArgumentNullException

FrameImage je nulov.

AddFrame(Třída, uint)

Rozšiřujte svou sbírku rámů beze stopy přidáním nového rámu nas touto intuitivní metodou. ideální pro vývojáře, kteří chtějí obohatit svéAnimace multimediálních snímk.Obsah nového rámu bude vyplněn z uvedeného obrázku.

public void AddFrame(RasterImage frameImage, uint frameTime)

Parameters

frameImage RasterImage

Obrázek z rámu.

frameTime uint

Doba trvání rámu v milisekundách.

Exceptions

ArgumentNullException

FrameImage je nulov.

AddPage(RasterImage)

Přidejte novou stránku do obrazu bez námahy pomocí této intuitivní metody.Ideální pro vývojáře, kteří se snaží dynamicky rozšířit obsah svých obrazových soubor.

public void AddPage(RasterImage page)

Parameters

page RasterImage

Stránka k přidán.

Exceptions

ArgumentNullException

page’ is null.

AdjustBrightness(Int)

Snadno přizpůsobte jasnost obrazu pomocí této intuitivní metody,používající specifikovaný jasnost parametr.Ideální pro vývojáře, kteří se chtějí dynamicky zvýšit nebo snížit celkovou jasnost obrázk.

public override void AdjustBrightness(int brightness)

Parameters

brightness int

Světelná hodnota.

AdjustContrast(flotila)

Zlepšuje kontrast Aspose.Imaging.Imageaby detaily vystupovaly s touto intuitivní metodou. ideální pro vývojářeSnaží se dynamicky zlepšit vizuální jasnost a dopad jejich obraz.

public override void AdjustContrast(float contrast)

Parameters

contrast float

Kontrastní hodnota (v rozmezí [-100; 100])

AdjustGamma(flotila)

Aplikujte gamma korekci na obrázek pomocí koeficientu plavebního boduIdeální pro vývojáře, kteří hledají přesnou kontrolu barvyv jejich obrázcích.

public override void AdjustGamma(float gamma)

Parameters

gamma float

Koeficient pro červené, zelené a modré kanály

AdjustGamma(plavba, plavba, plavba)

Výkon gamma korekce na obrázku samostatně pro červené, zelené a modré kanálypomocí individuálních koeficientů s touto intuitivní metodou. ideální pro vývojáře, kteří hledajíZlepšit barevnou rovnováhu a zlepšit vizuální kvalitu jejich obrázk.

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

Parameters

gammaRed float

Gamma pro koeficient červeného kanálu

gammaGreen float

Gamma pro koeficient zeleného kanálu

gammaBlue float

Gamma pro koeficient modrého kanálu

BinarizeBradley(Dvojnásobný, int)

Binarizace obrazu pomocí Bradleyho adaptivního prahu algoritmu pomocí integrovaného prahu obrazu

public override void BinarizeBradley(double brightnessDifference, int windowSize)

Parameters

brightnessDifference double

Rozdíl v jasu mezi pixelem a průměrem okna s x s pixelůSkládá se kolem tohoto pixelu.

windowSize int

Velikost okna s x s pixely soustředěné kolem tohoto pixelu

BinarizeFixed(byte)

Neúspěšně binárně obrázek pomocí předdefinovaného prahu s tímtoIntuitivní metoda. ideální pro vývojáře, kteří se snaží převést obrázky do binární formy,Zjednodušit je pro další zpracování nebo analýzu.

public override void BinarizeFixed(byte threshold)

Parameters

threshold byte

Pokud odpovídající šedá hodnota pixelů je větší než hranici, hodnota255 bude k němu přiděleno, 0 jinak.

BinarizeOtsu()

Provádět binaryzace na obrázku pomocí Otsu hranice s touto intuitivní metodou.Ideální pro vývojáře, kteří se chtějí automaticky určit optimální prah proKonvertovat obrázky do binární formy, zlepšit jejich jasnost a vhodnost pro další analýzu.

public override void BinarizeOtsu()

Crop(Rectangle)

Neúspěšně pěstovat obrázek zaměřit se na konkrétní oblasti s touto intuitivní metodou.Ideální pro vývojáře, kteří se snaží vylepšit složení svých obrázků dynamicky.

public override void Crop(Rectangle rectangle)

Parameters

rectangle Rectangle

V pravém úhlu.

Crop(Int, int, int, int, int)

Vyrůstajte obrázek při úpravě změn bezohledně pomocí této intuitivní metody.Ideální pro vývojáře, kteří hledají přesnou kontrolu procesu sklizněsoustředit se na konkrétní oblasti jejich Apng obrázk.

public override void Crop(int leftShift, int rightShift, int topShift, int bottomShift)

Parameters

leftShift int

Vlevo se měn.

rightShift int

Na správnou změnu.

topShift int

V horním směru.

bottomShift int

V dolním směru.

Dither(DitheringMetoda, int, IColorPalette)

S touto intuitivní metodou lze snadno aplikovat dithering efekty na aktuální obraz.Ideální pro vývojáře, kteří chtějí přidat texturu nebo snížit barvy v jejich obrázcích.

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

Parameters

ditheringMethod DitheringMethod

Způsob rozptýlen.

bitsCount int

Poslední bity počítají na dithering.

customPalette IColorPalette

Závěrečná paleta pro dytován.

Filter(Rektangle, FilterOptionsBase)

Neúspěšně aplikujte filtry na určený rektál obrazu s tímtoIdeální pro vývojáře, kteří se snaží zlepšit nebo změnit konkrétní oblasti.

public override void Filter(Rectangle rectangle, FilterOptionsBase options)

Parameters

rectangle Rectangle

V pravém úhlu.

options FilterOptionsBase

Tyto možnosti.

GetDefaultOptions(Objekt[])

Opravte výchozí možnosti bez námahy pomocí této jednoduché metody.Ideální pro vývojáře, kteří hledají rychlý přístup k výchozím nastavení obrázku Apng.

public override ImageOptionsBase GetDefaultOptions(object[] args)

Parameters

args object []a[]

a argumenty.

Returns

ImageOptionsBase

Defaultní možnosti

GetModifyDate(Bolíček)

Rychle získat datum a čas, kdy byl obrázek zdroje naposledy upravens touto uživatelsky přívětivou metodou. ideální pro vývojáře, kteří potřebují sledovat změnya efektivně spravovat zdroje.

public override DateTime GetModifyDate(bool useDefault)

Parameters

useDefault bool

Pokud je nastaven na “pravdivý”, použijte informace z FileInfo jako výchozí hodnotu.

Returns

DateTime

Datum a čas, kdy byl obrázek zdrojů naposledy změněn.

GetOriginalOptions()

Obnovte možnosti založené na původních nastavení souborů bez námahy s touto intuitivní metodou.Ideální pro vývojáře, kteří chtějí získat přístup a používat nastavení, které odpovídají vlastnostemz původního souboru.To může být užitečné pro udržení bitové hloubky a dalších parametrů původního obrazu nezměněných.Například, pokud nahráváme černobílý PNG obrázek s 1 bitem na pixel a pak ho uložíme pomocíMetoda Aspose.Imaging.DataStreamSupporter.Save(System.String) bude produkována výstupní PNG s 8-bitovým obrazem na pixel.Chcete-li se tomu vyhnout a ušetřit PNG obrázek s 1 bitem na pixel, použijte tuto metodu, abyste získali odpovídající možnosti ušetření a projít jedo metody Aspose.Imaging.Image.Save(System.String,Aspose.Imaging.ImageOptionsBase) jako druhý parametr.

public override ImageOptionsBase GetOriginalOptions()

Returns

ImageOptionsBase

Možnosti založené na původních nastavení soubor.

GetPagesAsEnumerable()

Tyto stránky jsou považovány za sčítateln.

protected override IEnumerable<image/> GetPagesAsEnumerable()

Returns

IEnumerable < Image >

Své stránky jako sčítateln.

Grayscale()

S tímto intuitivním způsobem snadno přeměňte obraz na jeho grayscale reprezentaci.Ideální pro vývojáře, kteří se snaží převést barevné obrázky na šedé, zjednodušující jejichvizualizace nebo analýzy.

public override void Grayscale()

InsertFrame(Int)

Neúspěšně vložíte nový rám do vaší sbírky rámů na specifikovanémIdeální pro vývojáře, kteří hledají přesnou kontrolu nadUspořádání rámů v jejich animacích multi-frame obrázk.Nový rám bude vytvořen podle velikosti aktuálního obrazu.

public ApngFrame InsertFrame(int index)

Parameters

index int

To je index.

Returns

ApngFrame

Nově vytvořený APNG rám.

Exceptions

ArgumentOutOfRangeException

index’ is less than 0.orindex’ is greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.

InsertFrame(Články, RasterImage)

Vložte nový rám do vlastní sběru rámů na specifikovaném indexu.Obsah nového rámu bude vyplněn z uvedeného obrázku.

public void InsertFrame(int index, RasterImage frameImage)

Parameters

index int

To je index.

frameImage RasterImage

Obrázek z rámu.

Exceptions

ArgumentOutOfRangeException

index’ is less than 0.orindex’ is greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.

ArgumentNullException

FrameImage je nulov.

InsertFrame(Článek, RasterImage, uint)

Vložte nový rám do vlastní sběru rámů na specifikovaném indexu.Obsah nového rámu bude vyplněn z uvedeného obrázku.

public void InsertFrame(int index, RasterImage frameImage, uint frameTime)

Parameters

index int

To je index.

frameImage RasterImage

Obrázek z rámu.

frameTime uint

Doba trvání rámu v milisekundách.

Exceptions

ArgumentOutOfRangeException

index’ is less than 0.orindex’ is greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.

ArgumentNullException

FrameImage je nulov.

PopFrameAt(Int)

Odstranit a získat rám na specifikovaném indexu z vaší sbírky rámůs touto intuitivní metodou. ideální pro vývojáře, kteří hledají efektivní řízenív jejich animacích.

public ApngFrame PopFrameAt(int index)

Parameters

index int

To je index.

Returns

ApngFrame

Odstraněný rám APNG.

Exceptions

ArgumentOutOfRangeException

index’ is less than 0.orindex’ is equal to or greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.

ReleaseManagedResources()

Uvolňuje spravované zdroje. ujistěte se, že zde nejsou zveřejněny žádné nezveřejněné zdroje, protože mohou býtUž byl propuštěn.

protected override void ReleaseManagedResources()

RemoveAllFrames()

Vyčistěte kolekci rámu odstraněním všech rámů pomocí této intuitivní metody.Ideální pro vývojáře, kteří se snaží resetovat nebo obnovit své animace.

public void RemoveAllFrames()

Examples

Následující příklad ukazuje, jak vytvořit obrázek APNG z jiného obrázku na jedné stránce.

using Aspose.Imaging;
                                                                                                      using Aspose.Imaging.ImageOptions;
                                                                                                      using Aspose.Imaging.FileFormats.Apng;

                                                                                                      const int AnimationDuration = 1000; // 1 s
                                                                                                      const int FrameDuration = 70; // 70 ms
                                                                                                      using (RasterImage sourceImage = (RasterImage)Image.Load("not_animated.png"))
                                                                                                      {
                                                                                                          ApngOptions createOptions = new ApngOptions
                                                                                                          {
                                                                                                              Source = new FileCreateSource("raster_animation.png", false),
                                                                                                              DefaultFrameTime = (uint)FrameDuration,
                                                                                                              ColorType = PngColorType.TruecolorWithAlpha,
                                                                                                          };

                                                                                                          using (ApngImage apngImage = (ApngImage)Image.Create(
                                                                                                              createOptions,
                                                                                                              sourceImage.Width,
                                                                                                              sourceImage.Height))
                                                                                                          {
                                                                                                              // It is possible to set image default frame time there: apngImage.DefaultFrameTime = (uint)FrameDuration;

                                                                                                              int numOfFrames = AnimationDuration / FrameDuration;
                                                                                                              int numOfFrames2 = numOfFrames / 2;

                                                                                                              // Cleaning because the image contains one frame by default
                                                                                                              apngImage.RemoveAllFrames();

                                                                                                              // add first frame
                                                                                                              apngImage.AddFrame(sourceImage);

                                                                                                              // add intermediate frames
                                                                                                              for (int frameIndex = 1; frameIndex &lt; numOfFrames - 1; ++frameIndex)
                                                                                                              {
                                                                                                                  apngImage.AddFrame(sourceImage);
                                                                                                                  ApngFrame lastFrame = (ApngFrame)apngImage.Pages[apngImage.PageCount - 1];
                                                                                                                  float gamma = frameIndex &gt;= numOfFrames2 ? numOfFrames - frameIndex - 1 : frameIndex;
                                                                                                                  lastFrame.AdjustGamma(gamma);
                                                                                                              }

                                                                                                              // add last frame
                                                                                                              apngImage.AddFrame(sourceImage);

                                                                                                              apngImage.Save();
                                                                                                          }
                                                                                                      }

RemoveFrameAt(Int)

Odstraňte rám na specifikovaném indexu z vaší sbírky rámů bezohledněIdeální pro vývojáře, kteří hledají zjednodušené řízení rámůVe svých multi-frame obrázcích.Rám, který bude vymazán, bude vymazán.

public void RemoveFrameAt(int index)

Parameters

index int

To je index.

Exceptions

ArgumentOutOfRangeException

index’ is less than 0.orindex’ is equal to or greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.

ResetDefaultImage()

Odstranit předem nastavený výchozí obrázek pomocí této intuitivní metody.Ideální pro vývojáře, kteří se snaží resetovat nebo vymazat výchozí obrázek ve své animace.Po tom je výchozí obrázek prvním rámem v vlastní sbírce rámů.(Nemůže být odstraněn pomocí této metody).

public void ResetDefaultImage()

Resize(int, int, resizeType)

Obnovte obrázek bezohledně pomocí této intuitivní metody. Ideální pro vývojářeSnaží se dynamicky upravovat rozměry jejich obraz.

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

Parameters

newWidth int

A nová šířka.

newHeight int

A nová výška.

resizeType ResizeType

Tyto typy jsou recidivn.

Resize(snímky, snímky, snímky)

Odstraňuje obraz.

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

Parameters

newWidth int

A nová šířka.

newHeight int

A nová výška.

settings ImageResizeSettings

Zpětné nastaven.

ResizeHeightProportionally(Zpět, ResizeType)

Neúspěšně upravovat výšku obrazu při zachování jeho poměrůs touto intuitivní metodou. ideální pro vývojáře, kteří chtějí resize obrázkyDynamicky při zachování jejich aspektového poměru.

public override void ResizeHeightProportionally(int newHeight, ResizeType resizeType)

Parameters

newHeight int

A nová výška.

resizeType ResizeType

Druh odrůdy.

ResizeWidthProportionally(Zpět, ResizeType)

S tímto intuitivním způsobem se bez námahy poměrně rozšiřuje šířka obrazu.Ideální pro vývojáře, kteří se snaží udržet aspektní poměr svých obrázků, zatímcopřizpůsobení jejich rozměr.

public override void ResizeWidthProportionally(int newWidth, ResizeType resizeType)

Parameters

newWidth int

A nová šířka.

resizeType ResizeType

Druh odrůdy.

Rotate(plavba, bool, barva)

Obrátit obraz kolem jeho centra bez námahy s touto intuitivní metodou.Ideální pro vývojáře, kteří se snaží dynamicky přizpůsobit orientaci svých obrázk.

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

Parameters

angle float

Otevírací úhel v stupních. pozitivní hodnoty se otáčí po hodin.

resizeProportionally bool

Pokud je nastaven na “skutečný”, budete mít velikost obrazu změněna v závislosti na rotačních rektangle (kornové body) projekce v jiném případě, které zanechávají rozměry nedotčené a pouzevnitřní obsah obrazu jsou rotačn.

backgroundColor Color

Barva pozad.

RotateFlip(RotateFlipType)

Neúspěšně manipulovat aktivním rámem otáčením, flippingem nebo obojís touto intuitivní metodou. ideální pro vývojáře, kteří se chtějí přizpůsobitObrazový rám orientace.

public override void RotateFlip(RotateFlipType rotateFlipType)

Parameters

rotateFlipType RotateFlipType

Typ rotujícího flip.

SaveData(Stream)

Ušetříme data.

protected override void SaveData(Stream stream)

Parameters

stream Stream

Příliv pro ukládání dat.

SetDefaultImage(RasterImage)

Nastavení specifikovaného rasterového obrazu jako výchozího obrazu pro aktuální animacebezproblémové s touto metodou. ideální pro vývojáře, kteří se snaží přizpůsobitPředběžný obrázek v jejich animacích.

public void SetDefaultImage(RasterImage image)

Parameters

image RasterImage

To je obraz.

Exceptions

ArgumentNullException

Obrázek je nulov.

UpdateDimensions(a int, int)

Aktualizace rozměrů obrazu.

protected override void UpdateDimensions(int newWidth, int newHeight)

Parameters

newWidth int

Nové obrazové šířky.

newHeight int

Nová výška obrazu.

UpdateMetadata()

Aktualizujte metadata snímku.

protected override void UpdateMetadata()
 Čeština