Class ApngImage

Class ApngImage

A név: Aspose.Imaging.FileFormats.Apng Összefoglaló: Aspose.Imaging.dll (25.4.0)

Animált PNG (Animated Portable Network Graphics) képfájlA formatum sokoldalú megoldás a fejlesztők számára, akik integrálni akarnakanimált tartalom az alkalmazásokba. Ez az API kiterjedta keretbeállítások ellenőrzése, lehetővé téve a felhasználók számára, hogy meghatározzák a keretrendszertparaméterek, beleértve a loop hossza és a PNG fájl beállításait.funkció-gazdag eszköz, könnyedén kezelheti és optimalizálja a kijelzőtaz APNG képek, import és export képeket, javítva a dinamikát ésAz Ön alkalmazásainak interaktív aspektusa.

[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

Örökletes tagok

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

Az alábbi példa azt mutatja, hogyan kell exportálni apng APNG fájlformátum más nem animált többoldalú formátum.

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
                                                                                                                     }

Az alábbi példa azt mutatja, hogyan kell exportálni az APNG fájl formátum.

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
                                                                         }

Az alábbi példa azt mutatja, hogyan kell létrehozni egy APNG képet egy másik raster egyoldalú kép.

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(Az ApngOptions, int és int)

Kezdje a munkát a Aspose.Imaging.FileFormats.Apng. ApngImage osztály kezdeményezésévelEgy új példány erőteljesen. tökéletes a fejlesztők számára, akik el akarják kezdeniAz ApngImage objektumokat gyorsan és hatékonyan használja a projektekben.

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

Parameters

options ApngOptions

Az opciók.

width int

A szélesség.

height int

A magasság.

Properties

DefaultFrameTime

Könnyen beállíthatja az alapértelmezett keret időtartamát, hogy új kereteket hozzon létreEz a rugalmas tulajdonság. tökéletes a fejlesztők számára, akik a keretrendszer időzítését szeretnék személyre szabnihatékonyan az animációkban.

public uint DefaultFrameTime { get; set; }

ingatlan értéke

uint

Examples

Az alábbi példa azt mutatja, hogyan kell létrehozni egy APNG képet egy másik raster egyoldalú kép.

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

Gyorsan hozzáférhet a fájlformátumra vonatkozó információkhoz ezzel a kényelmes tulajdonsággal.Ideális azoknak a fejlesztőknek, akiknek meg kell szerezniük a formátum részleteitAz Apng fájlokat könnyen.

public override FileFormat FileFormat { get; }

ingatlan értéke

FileFormat

Interlaced

Gyorsan meghatározzuk, hogy ez a Aspose.Imaging.FileFormats.Png. PngImage objektum összekapcsolódik-eEz a kényelmes ingatlan. ideális a fejlesztők, hogy ellenőrizzeA PNG képek összekapcsolásának állapotát könnyen.

public bool Interlaced { get; }

ingatlan értéke

bool

NumPlays

Könnyedén ellenőrizze, hogy mennyi alkalommal fut az animáció ezzelsokoldalú tulajdonság. tökéletes a fejlesztők számára, akik pontos ellenőrzést keresnekanimációs viselkedés, az infinite looping támogatásával aAz érték egyenlő a 0.

public int NumPlays { get; set; }

ingatlan értéke

int

PageCount

Visszaállítsa a teljes számú oldalt a képfájlban keményen ezzel a tulajdonsággal.Ideális azoknak a fejlesztőknek, akik gyors hozzáférést igényelnek az oldalszámítási információkhoz.

public override int PageCount { get; }

ingatlan értéke

int

Pages

Könnyedén hozzáférhet a kép oldalaihoz ezzel a kényelmes tulajdonsággal.Ideális azoknak a fejlesztőknek, akik gyors és könnyű hozzáférést keresnek az egyes oldalakhoz a manipulációhoz.

public override Image[] Pages { get; }

ingatlan értéke

Image []

XmpData

Könnyedén kezeli a fájlokkal összefüggő XMP metadatait ezzelsokoldalú tulajdonság. tökéletes a fejlesztők számára, akik hozzáférést vagy frissítést keresnekA metadata könnyedén elérhető.

public override XmpPacketWrapper XmpData { get; set; }

ingatlan értéke

XmpPacketWrapper

Methods

AddFrame()

Egyszerűen csatlakoztassa egy új keretet a keretek gyűjteményének végére ezzelEgyszerű módszer. ideális a fejlesztők, akik szeretnék bővíteni a sajátframe gyűjtemény dinamikusan animációk multi-frame képek.Új keretet hoz létre a jelenlegi kép méretének megfelelően.

public ApngFrame AddFrame()

Returns

ApngFrame

Az újonnan létrehozott APNG keret.

AddFrame(RasterImage)

Könnyedén bővíti a keretgyűjteményt egy új keret hozzáadásával a végéreEzzel az intuitív módszerrel. tökéletes a fejlesztők számára, akik megpróbálják javítani aA multi-frame képek animációja dinamikusan.Az új keret tartalma a megadott képből lesz kitöltve.

public void AddFrame(RasterImage frameImage)

Parameters

frameImage RasterImage

A keret kép.

Examples

Az alábbi példa azt mutatja, hogyan kell létrehozni egy APNG képet egy másik raster egyoldalú kép.

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

A frameImage nulla.

AddFrame(Székelyfehérvár, Uint)

Kiterjeszti a keretrendszer gyűjteményét azáltal, hogy egy új keretet alkalmaz aEz az intuitív módszer. ideális a fejlesztők, akik szeretnék gazdagítani a sajátA többdimenziós képek animációja.Az új keret tartalma a megadott képből lesz kitöltve.

public void AddFrame(RasterImage frameImage, uint frameTime)

Parameters

frameImage RasterImage

A keret kép.

frameTime uint

A keretrendszer időtartama millisekunderben.

Exceptions

ArgumentNullException

A frameImage nulla.

AddPage(RasterImage)

Hozzon hozzá egy új oldalt a képhez keményen ezzel az intuitív módszerrel.Ideális azoknak a fejlesztőknek, akik dinamikusan szeretnék bővíteni a képfájlok tartalmát.

public void AddPage(RasterImage page)

Parameters

page RasterImage

Az oldal hozzáadása.

Exceptions

ArgumentNullException

page’ is null.

AdjustBrightness(int)

Könnyen beállíthatja a világosságot" a kép ezzel az intuitív módszerrel,a meghatározott világosság paraméterét használva.Ideális a fejlesztők számára, akik dinamikusan szeretnék javítani vagy csökkenteni az összes kép fényességét.

public override void AdjustBrightness(int brightness)

Parameters

brightness int

A fény értéke.

AdjustContrast(Flotta)

Javítja a kontrasztot a Aspose.Imaging.Imagehogy a részletek kiemelkedjenek ezzel az intuitív módszerrel. ideális a fejlesztők számáramegpróbálják dinamikusan javítani a képek vizuális világosságát és hatását.

public override void AdjustContrast(float contrast)

Parameters

contrast float

A kontraszt értéke (tartományban [-100; 100])

AdjustGamma(Flotta)

Gamma korrekció alkalmazása a képhez egy úszási pont koefficiens használatávalEz az intuitív módszer. ideális a fejlesztők számára, akik pontos színellenőrzést keresnekAz ő képükben.

public override void AdjustGamma(float gamma)

Parameters

gamma float

Gamma a vörös, zöld és kék csatornák koefficiens

AdjustGamma(hajó, hajó, hajó)

Gamma korrekciót végezzen a képen külön-külön a vörös, zöld és kék csatornákonaz egyéni koefficiensek használata ezzel az intuitív módszerrel. ideális a fejlesztők számára, akik keresika finom színek egyensúlyát és javítja a képek vizuális minőségét.

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

Parameters

gammaRed float

Gamma a vörös csatorna koefficienshez

gammaGreen float

Gamma a zöld csatorna koefficienshez

gammaBlue float

Gamma a kék csatorna koefficienshez

BinarizeBradley(kettős, int)

A kép binarizálása a Bradley adaptív küszöbérték algoritmusával az integrált kép küszöbértékével

public override void BinarizeBradley(double brightnessDifference, int windowSize)

Parameters

brightnessDifference double

A pixel és a s x s ablak közötti fénykülönbségEzzel a pixelrel összpontosítunk.

windowSize int

A s x s ablak mérete a pixel körül összpontosított

BinarizeFixed(Byte)

Könnyedén binárisítse a képet egy előre meghatározott küszöbön, ezzelIntuitív módszer. ideális a fejlesztők, akik szeretnék átalakítani a képeket bináris formában,a további feldolgozás vagy elemzés céljából történő egyszerűsítése.

public override void BinarizeFixed(byte threshold)

Parameters

threshold byte

Ha egy pixel megfelelő szürke értéke meghaladja a határértéket, a255 lesz odaítélve, 0 másként.

BinarizeOtsu()

Végezzen binarizációt a képen az Otsu határátkelővel ezzel az intuitív módszerrel.Ideális azoknak a fejlesztőknek, akik automatikusan meg akarják határozni az optimális küszöbötátalakítja a képeket bináris formába, javítva a tisztaságukat és a további elemzéshez való alkalmasságukat.

public override void BinarizeOtsu()

Crop(Rectangle)

Könnyedén termeszti a képet, hogy ezt az intuitív módszert a konkrét területekre összpontosítson.Ideális azoknak a fejlesztőknek, akik dinamikusan megpróbálják kifinomítani a képek összetételét.

public override void Crop(Rectangle rectangle)

Parameters

rectangle Rectangle

A rektangulát.

Crop(int, int, int, int és int)

Növesse a képet, miközben átalakítja a változásokat szüntelenül ezzel az intuitív módszerrel.Ideális azoknak a fejlesztőknek, akik pontos ellenőrzést keresnek a termesztési folyamatrólAz Apng képek konkrét területeire összpontosítanak.

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

Parameters

leftShift int

A baloldali változás.

rightShift int

A helyes változás.

topShift int

A legfelső változás.

bottomShift int

Az alsó változás.

Dither(DitheringMethod, int, IColorPalette)

Könnyen alkalmazza a dimenzió hatásait a jelenlegi képre ezzel az intuitív módszerrel.Ideális azoknak a fejlesztőknek, akik textúrát szeretnének hozzáadni vagy csökkenteni a színes kötődéseket a képükben.

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

Parameters

ditheringMethod DitheringMethod

Az eltávolító módszer.

bitsCount int

Az utolsó bitek számolnak a ditheringre.

customPalette IColorPalette

A Dithering számára használt paletták.

Filter(Rectangle, FilterOptionsBázis)

Könnyedén alkalmazza a szűrőket a kép meghatározott rektangulájára ezzelIntuitív módszer. tökéletes a fejlesztők, akik szeretnék javítani vagy módosítani egy adott területen.

public override void Filter(Rectangle rectangle, FilterOptionsBase options)

Parameters

rectangle Rectangle

A rektangulát.

options FilterOptionsBase

Az opciók.

GetDefaultOptions(objektum[])

Javítsa az alapértelmezett opciókat keményen ezzel az egyszerű módszerrel.Ideális azoknak a fejlesztőknek, akik gyors hozzáférést keresnek az alapértelmezett Apng képbeállításokhoz.

public override ImageOptionsBase GetDefaultOptions(object[] args)

Parameters

args object []

Az érvek.

Returns

ImageOptionsBase

Default opciók

GetModifyDate(Bóli)

Gyorsan megkapja a dátumot és az időt, amikor az erőforrás képet utoljára módosítottákEz a felhasználóbarát módszer. Ideális a fejlesztők számára, akiknek meg kell nyomon követniük a változásokatés hatékonyan kezeli az erőforrásokat.

public override DateTime GetModifyDate(bool useDefault)

Parameters

useDefault bool

ha „igaz” beállítva használja a FileInfo-ból származó információt alapértelmezett értésként.

Returns

DateTime

A dátum és az idő az erőforrás képet utoljára módosították.

GetOriginalOptions()

Az eredeti fájl beállításokon alapuló opciók visszanyerése keményen ezzel az intuitív módszerrel.Tökéletes azoknak a fejlesztőknek, akik hozzáférni és olyan beállításokat használnak, amelyek összhangban vannak a jellemzőkkelAz eredeti fájlból.Ez segíthet abban, hogy az eredeti kép bit mélysége és egyéb paraméterei változatlanok maradjanak.Például, ha egy fekete-fehér PNG képet 1 bit per pixelrel töltünk fel, majd aAspose.Imaging.DataStreamSupporter.Save(System.String) módszer, a kimeneti PNG kép 8 bit per pixel lesz előállítva.Ahhoz, hogy elkerüljék és mentse a PNG képet 1 bit per pixel, használja ezt a módszert, hogy megkapja a megfelelő mentési lehetőségeket, és adja át őketa Aspose.Imaging.Image.Save(System.String,_Wl17. ImageOptionsBase) módszer a második paraméter.

public override ImageOptionsBase GetOriginalOptions()

Returns

ImageOptionsBase

Az eredeti fájl beállításokon alapuló lehetőségek.

GetPagesAsEnumerable()

Az oldalak számolhatók.

protected override IEnumerable<image/> GetPagesAsEnumerable()

Returns

IEnumerable < Image >

A saját oldalak számolhatók.

Grayscale()

Könnyedén átalakítja a képet a szürke színű reprezentációjába ezzel az intuitív módszerrel.Ideális a színes képek átalakítására törekvő fejlesztők számára, egyszerűsítve avizualizációs vagy elemzési folyamatok.

public override void Grayscale()

InsertFrame(int)

Nehezen helyezzen be egy új keretet a keretek gyűjteményébe a megadottEzzel az intuitív módszerrel. ideális a fejlesztők számára, akik pontos ellenőrzést keresneka keretek elrendezése a többdimenziós képek animációjában.Új keretet hoz létre a jelenlegi kép méretének megfelelően.

public ApngFrame InsertFrame(int index)

Parameters

index int

Ez az index.

Returns

ApngFrame

Az újonnan létrehozott APNG keret.

Exceptions

ArgumentOutOfRangeException

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

InsertFrame(Részletesebben RasterImage)

Helyezze be az új keretet a saját keretek gyűjteményébe a meghatározott indexben.Az új keret tartalma a megadott képből lesz kitöltve.

public void InsertFrame(int index, RasterImage frameImage)

Parameters

index int

Ez az index.

frameImage RasterImage

A keret kép.

Exceptions

ArgumentOutOfRangeException

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

ArgumentNullException

A frameImage nulla.

InsertFrame(Részletesebben RasterImage, Uint)

Helyezze be az új keretet a saját keretek gyűjteményébe a meghatározott indexben.Az új keret tartalma a megadott képből lesz kitöltve.

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

Parameters

index int

Ez az index.

frameImage RasterImage

A keret kép.

frameTime uint

A keretrendszer időtartama millisekunderben.

Exceptions

ArgumentOutOfRangeException

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

ArgumentNullException

A frameImage nulla.

PopFrameAt(int)

Távolítsa el és visszavonja a keretet a meghatározott indexből a keretgyűjteménybőlEz az intuitív módszer. tökéletes a fejlesztők számára, akik hatékony menedzsmentet keresnekA rajzok az animációkban.

public ApngFrame PopFrameAt(int index)

Parameters

index int

Ez az index.

Returns

ApngFrame

Az eltávolított APNG keretrendszer.

Exceptions

ArgumentOutOfRangeException

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

ReleaseManagedResources()

A kezelt erőforrások kibocsátása. Győződjön meg róla, hogy itt nem bocsátják ki a kezeletlen forrásokat, mivel azok lehetnekMár szabadon bocsátották.

protected override void ReleaseManagedResources()

RemoveAllFrames()

Tisztítsa meg a keretek gyűjteményét azáltal, hogy eltávolítja az összes keretet ezzel az intuitív módszerrel.Ideális azoknak a fejlesztőknek, akik újratelepíteni vagy frissíteni szeretnék animációikat.

public void RemoveAllFrames()

Examples

Az alábbi példa azt mutatja, hogyan kell létrehozni egy APNG képet egy másik raster egyoldalú kép.

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)

Távolítsa el a meghatározott index keretét a keretgyűjteménybőlIdeális a fejlesztők számára, akik szigorúan kezelik a kereteketA többdimenziós képekben.A törlésre kerülő keret eltávolításra kerül.

public void RemoveFrameAt(int index)

Parameters

index int

Ez az index.

Exceptions

ArgumentOutOfRangeException

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

ResetDefaultImage()

Távolítsa el a korábban beállított alapértelmezett képet ezzel az intuitív módszerrel.Ideális azoknak a fejlesztőknek, akik szeretnék újra beállítani vagy törölni az alapértelmezett képet animációjukban.Ezt követően az alapértelmezett kép az első keret a saját keretgyűjteményben(Ezt a módszert nem lehet eltávolítani.)

public void ResetDefaultImage()

Resize(Az int, int, resizeType)

Ezzel az intuitív módszerrel átirányítsa a képet.Tökéletes a fejlesztők számáraa képek dimenzióinak dinamikusan történő beállítása érdekében.

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

Parameters

newWidth int

Az új szélesség.

newHeight int

Az új magasság.

resizeType ResizeType

A visszavágó típus.

Resize(int, int, ImageResizeSettings)

visszaállítja a képet.

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

Parameters

newWidth int

Az új szélesség.

newHeight int

Az új magasság.

settings ImageResizeSettings

A helyreállítási beállítások.

ResizeHeightProportionally(Részletesebben ResizeType)

Könnyedén beállítja a kép magasságát, miközben megtartja arányátEzzel az intuitív módszerrel. tökéletes a fejlesztők számára, akik képeket szeretnének átalakítanidinamikusan, miközben megőrzi az arányt.

public override void ResizeHeightProportionally(int newHeight, ResizeType resizeType)

Parameters

newHeight int

Az új magasság.

resizeType ResizeType

A visszahúzódás típusa.

ResizeWidthProportionally(Részletesebben ResizeType)

A kép szélességét ezzel az intuitív módszerrel viszonylag erőteljesen átalakítjuk.Ideális azoknak a fejlesztőknek, akik megpróbálják fenntartani a képek aspektus arányát, miközbenA dimenziók kiigazítása.

public override void ResizeWidthProportionally(int newWidth, ResizeType resizeType)

Parameters

newWidth int

Az új szélesség.

resizeType ResizeType

A visszahúzódás típusa.

Rotate(Float, Bool, Szín)

Kerülje a képet a központ körül erőteljesen ezzel az intuitív módszerrel.Ideális azoknak a fejlesztőknek, akik a képek orientációját dinamikusan szeretnék igazítani.

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

Parameters

angle float

A fordulati szög fokban. pozitív értékek fordulnak órásan.

resizeProportionally bool

ha a ‘igaz’ beállítva megváltozik a kép méretét a forgatott rektangul (szögpontok) projekciókkal összhangban, más esetekben, amelyek a dimenziókat érintetlenül hagyják, és csak belső kép tartalmát forgatták.

backgroundColor Color

A háttér színe.

RotateFlip(RotateFlipType)

Könnyedén manipulálja az aktív keret a forgatás, flipping, vagy mindkettőEzzel az intuitív módszerrel. ideális a fejlesztők számára, akik személyre szabni szeretnékKép keretrendszer orientáció.

public override void RotateFlip(RotateFlipType rotateFlipType)

Parameters

rotateFlipType RotateFlipType

A rotatott flip típus.

SaveData(Stream)

Megtakarítja az adatokat.

protected override void SaveData(Stream stream)

Parameters

stream Stream

Az áram, hogy mentse az adatokat.

SetDefaultImage(RasterImage)

Állítsa be a kijelölt raster képet az aktuális animáció alapértelmezett képekéntkeményen ezzel a módszerrel. tökéletes a fejlesztők számára, akik személyre szabni szeretnékA képet az animációkban.

public void SetDefaultImage(RasterImage image)

Parameters

image RasterImage

A képet.

Exceptions

ArgumentNullException

A kép nulla.

UpdateDimensions(Az int, int)

A kép dimenzióinak frissítése.

protected override void UpdateDimensions(int newWidth, int newHeight)

Parameters

newWidth int

Az új kép szélessége.

newHeight int

Az új kép magassága.

UpdateMetadata()

A kép metadatainak frissítése.

protected override void UpdateMetadata()
 Magyar