Class ApngImage

Class ApngImage

ja nimityö: Aspose.Imaging.FileFormats.Apng Kokoelma: Aspose.Imaging.dll (25.4.0)

Animoitu PNG (Animated Portable Network Graphics) -kuvan tiedostoformatti on monipuolinen ratkaisu kehittäjille, jotka haluavat integroidaanimoitu sisältö niiden sovelluksiin. tämä API tarjoaa laajanvalvonta kehyksen asetuksia, joiden avulla käyttäjät voivat määritellä puitteet-erityisetparametrit, mukaan lukien kierroksen kesto ja PNG-tiedoston asetukset.ominaisuuksia rikas työkalu, voit helposti hallita ja optimoida näytönAPNG-kuvia, tuontia ja vientiä koskevia kuvia, jotka parantavat dynaamista jasovelluksesi vuorovaikutteiset näkökohdat.

[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

Perintöjäsenet

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

Seuraava esimerkki osoittaa, miten vienti apng APNG tiedostomuoto muista ei-animated monivaiheinen muoto.

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
                                                                                                                     }

Seuraava esimerkki näyttää, miten viedä APNG tiedostomuotoon.

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
                                                                         }

Seuraava esimerkki näyttää, miten luoda APNG-kuva toisesta rasterin yhden sivun kuvasta.

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(ApngOptions, int ja int)

Aloita työskentely Aspose.Imaging.FileFormats.Apng. ApngImage luokan aloittamallauusi esimerkki vaivattomasti. täydellinen kehittäjille, jotka haluavat aloittaaApngImage-objektien käyttö projektissaan nopeasti ja tehokkaasti.

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

Parameters

options ApngOptions

ja vaihtoehtoja.

width int

Ja sen leveys.

height int

ja korkeuden.

Properties

DefaultFrameTime

Helppo säätää oletusarvoisen kehityksen kestoa uusien kehysten luomiseksiTämä joustava ominaisuus. Täydellinen kehittäjille, jotka haluavat räätälöidä kehyksen aikatauluntehokkaasti niiden animaatioissa.

public uint DefaultFrameTime { get; set; }

Omistuksen arvo

uint

Examples

Seuraava esimerkki näyttää, miten luoda APNG-kuva toisesta rasterin yhden sivun kuvasta.

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

Nopea pääsy tiedostomuotoa koskeviin tietoihin tällä kätevällä omaisuudella.Ihanteellinen kehittäjille, jotka tarvitsevat yksityiskohtia muodostaApng tiedostoja helposti.

public override FileFormat FileFormat { get; }

Omistuksen arvo

FileFormat

Interlaced

Määritä nopeasti, onko tämä Aspose.Imaging.FileFormats.Png. PngImage-objektti sidottuTämä mukava omaisuus. ihanteellinen kehittäjille, jotka tarvitsevat tarkistaaPNG-kuvien yhteydenpito on helppoa.

public bool Interlaced { get; }

Omistuksen arvo

bool

NumPlays

Hallitse vaivattomasti, kuinka monta kertaa animaatiosi kulkee tämän kanssamonipuolinen omaisuus. Täydellinen kehittäjille, jotka etsivät tarkkaa hallintaaAnimaation käyttäytyminen, jossa tuetaan äärettömän kierrätyksen tapauksessaArvo on yhtä suuri kuin 0.

public int NumPlays { get; set; }

Omistuksen arvo

int

PageCount

Palauta koko sivujen lukumäärä kuvan tiedostossa vaivattomasti tällä ominaisuudella.Ihanteellinen kehittäjille, jotka tarvitsevat nopean pääsyn sivun laskun tietoihin.

public override int PageCount { get; }

Omistuksen arvo

int

Pages

Helppo pääsy kuvan sivuihin tällä kätevällä ominaisuudella.Täydellinen kehittäjille, jotka etsivät nopeaa ja helppoa pääsyä yksittäisiin sivuihin manipulointiin.

public override Image[] Pages { get; }

Omistuksen arvo

Image []

XmpData

Tehottomasti hallita XMP-metatietoja, jotka liittyvät tiedostoihisi käyttämällä tätämonipuolinen omaisuus. Täydellinen kehittäjille, jotka haluavat käyttää tai päivittääTietoa metatiedoista on helppoa.

public override XmpPacketWrapper XmpData { get; set; }

Omistuksen arvo

XmpPacketWrapper

Methods

AddFrame()

Helppo liittää uusi kehys kokoelmasi loppuun tämän avullayksinkertainen menetelmä. ihanteellinen kehittäjille, jotka haluavat laajentaaFrame kerää dynaamisesti animaatioille, joilla on monivaiheisia kuvia.Uusi kehys luodaan nykyisen kuvan koon mukaan.

public ApngFrame AddFrame()

Returns

ApngFrame

Uudelleen luotu APNG-kehys.

AddFrame(RasterImage)

Tehottomasti laajentaa kehyksen kokoelman lisäämällä uuden kehon loppuunTämä intuitiivinen menetelmä. täydellinen kehittäjille, jotka pyrkivät parantamaananimaatioita monivaiheisia kuvia dynaamisesti.Uuden kehyksen sisältö täyttyy määritellystä kuvasta.

public void AddFrame(RasterImage frameImage)

Parameters

frameImage RasterImage

ja ramiinin kuva.

Examples

Seuraava esimerkki näyttää, miten luoda APNG-kuva toisesta rasterin yhden sivun kuvasta.

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 on nolla.

AddFrame(RasterImage ja Uint)

Laajenna kehyksen kokoelman sujuvasti lisäämällä uusi kehysTämä intuitiivinen menetelmä on ihanteellinen kehittäjille, jotka haluavat rikastuttaaanimaatioita monivaiheisista kuvista.Uuden kehyksen sisältö täyttyy määritellystä kuvasta.

public void AddFrame(RasterImage frameImage, uint frameTime)

Parameters

frameImage RasterImage

ja ramiinin kuva.

frameTime uint

Ohjelman kesto millisekunnissa.

Exceptions

ArgumentNullException

FrameImage on nolla.

AddPage(RasterImage)

Lisää uusi sivu kuvaa vaivattomasti tällä intuitiivisella menetelmällä.Täydellinen kehittäjille, jotka haluavat laajentaa kuvan tiedostojen sisältöä dynaamisesti.

public void AddPage(RasterImage page)

Parameters

page RasterImage

Sivua lisätään.

Exceptions

ArgumentNullException

page’ is null.

AdjustBrightness(Sisältää)

Helppo säätää brightness" kuvasta tällä intuitiivisella menetelmällä, käyttämällä määritettyä kirkkauden parametriä. Ihanteellinen kehittäjille, jotka pyrkivät parantamaan tai heikentämään kuvien yleistä kirkkaus dynaamisesti.

public override void AdjustBrightness(int brightness)

Parameters

brightness int

ja kirkkauden arvo.

AdjustContrast(Flottaa)

Parannetaan kontrastia Aspose.Imaging.Imagetehdä yksityiskohdat näkyvät tällä intuitiivisella menetelmällä. ihanteellinen kehittäjillepyrkii parantamaan niiden kuvien visuaalista selkeyttä ja vaikutusta dynaamisesti.

public override void AdjustContrast(float contrast)

Parameters

contrast float

Kontrastin arvo (sarjassa [-100; 100])

AdjustGamma(Flottaa)

Soveltaa gamma-korjausta kuviin käyttämällä floating point koefficienttiaTämä intuitiivinen menetelmä. ihanteellinen kehittäjille, jotka etsivät tarkkaa värivalvontaaja heidän kuvansa.

public override void AdjustGamma(float gamma)

Parameters

gamma float

Punaiset, vihreät ja siniset kanavat

AdjustGamma(laivasto, laivasto ja laivasto)

suorittaa gamma-korjaus kuvassa erikseen punaisten, vihreiden ja sinisten kanavien osaltakäyttäen yksittäisiä koefficienteja tällä intuitiivisella menetelmällä. ihanteellinen kehittäjille, jotka etsivätvärin tasapainottaminen ja niiden kuvien visuaalisen laadun parantaminen.

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

Parameters

gammaRed float

Punaisen kanavan koefficientti

gammaGreen float

Gamma vihreän kanavan koefficientille

gammaBlue float

Gamma sininen kanava koefficientti

BinarizeBradley(Kaksinkertainen int)

Binarisaatio kuvan käyttäen Bradleyn adaptiivisen raja-arvon algoritmia käyttäen integroitua kuvan raja-arvoa

public override void BinarizeBradley(double brightnessDifference, int windowSize)

Parameters

brightnessDifference double

Pikselin ja s x s ikkunan keskiarvon välinen kirkkauden eroKeskitetään tämän pixelin ympärille.

windowSize int

S x s ikkunan koko pikselit keskittyvät tämän pikselin ympärille

BinarizeFixed(bytejä)

Hyppäämättä binaryttää kuvaa käyttämällä etukäteen määriteltyä raja-arvoa tämän kanssaIntuitiivinen menetelmä. ihanteellinen kehittäjille, jotka haluavat muuntaa kuvia binary muoto,Yksinkertaistamalla niitä jatkossakin käsittelyä tai analyysiä varten.

public override void BinarizeFixed(byte threshold)

Parameters

threshold byte

Jos pixelin vastaava keltainen arvo on suurempi kuin raja,255 annetaan sille, 0 muutoin.

BinarizeOtsu()

suorittaa binaryytymistä kuvassa käyttämällä Otsu-rajaa tällä intuitiivisella menetelmällä.Ihanteellinen kehittäjille, jotka haluavat automaattisesti määrittää optimaalisen raja-arvonmuuntaa kuvia binary muoto, parantaa niiden selkeyttä ja soveltuvuutta lisätutkimuksia varten.

public override void BinarizeOtsu()

Crop(Rectangle)

Tehottomasti kasvaa kuva keskittyä tiettyihin alueisiin tämän intuitiivisen menetelmän avulla.Täydellinen kehittäjille, jotka pyrkivät parantamaan kuviensa koostumusta dynaamisesti.

public override void Crop(Rectangle rectangle)

Parameters

rectangle Rectangle

Se on oikea.

Crop(Inti, Inti, Inti ja Inti)

Kasvaa kuvaa ja säätää muutoksia sujuvasti tällä intuitiivisella menetelmällä.Ihanteellinen kehittäjille, jotka etsivät tarkkaa valvontaa viljelyprosessistakeskittyä niiden Apng-kuvien erityisiin alueisiin.

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

Parameters

leftShift int

Vasemmisto muuttuu.

rightShift int

Oikea muutos on.

topShift int

Korkeimman vaihdon mukaan.

bottomShift int

Alhainen muutos on.

Dither(DitheringMetodi, int, IColorPalette)

Helppo soveltaa dithering vaikutuksia nykyiseen kuviin tämän intuitiivisen menetelmän avulla.Ihanteellinen kehittäjille, jotka haluavat lisätä tekstua tai vähentää väriviivaa kuvissa.

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

Parameters

ditheringMethod DitheringMethod

Siirtymisen menetelmä on.

bitsCount int

Lopulliset bitit lasketaan mittaamiseen.

customPalette IColorPalette

Käytettävissä oleva paletti Ditheringille.

Filter(Rectangle ja FilterOptionsBase)

Helppo soveltaa suodattimia kuvan määriteltyyn reikiin tämän kanssaIhanteellinen kehittäjille, jotka haluavat parantaa tai muuttaa tiettyjä alueita.

public override void Filter(Rectangle rectangle, FilterOptionsBase options)

Parameters

rectangle Rectangle

Se on oikea.

options FilterOptionsBase

ja vaihtoehtoja.

GetDefaultOptions(Objekti[])

Korjaa oletusarvoiset vaihtoehdot vaivattomasti tällä yksinkertaisella menetelmällä.Ihanteellinen kehittäjille, jotka etsivät nopeaa pääsyä oletusarvoisiin Apng-kuvan asetuksiin.

public override ImageOptionsBase GetDefaultOptions(object[] args)

Parameters

args object []

ja argumentit .

Returns

ImageOptionsBase

Oletusvaihtoehtoja

GetModifyDate(Booli)

Nopea päivämäärä ja aika, kun resurssi kuvaa viimeksi muokattiinTämä käyttäjäystävällinen menetelmä on ihanteellinen kehittäjille, jotka tarvitsevat muutoksiaja hallita resursseja tehokkaasti.

public override DateTime GetModifyDate(bool useDefault)

Parameters

useDefault bool

Jos asetat “todelliseksi”, käytä FileInfo -tietoja oletusarvoina.

Returns

DateTime

Kuvan päivämäärä ja aika muutettiin viimeksi.

GetOriginalOptions()

Palauta alkuperäisten tiedostojen asetusten perusteella vaivattomasti tämän intuitiivisen menetelmän avulla.Täydellinen kehittäjille, jotka etsivät pääsyä ja käyttää ominaisuuksiin sopivia asetuksiaalkuperäisestä tiedostosta.Tämä voi olla hyödyllistä pitää bit-syvyys ja muut parametrit alkuperäisen kuvan muuttumaton.Esimerkiksi, jos lataamme mustavalkoisen PNG-kuvan 1 bitilla pikseliä kohden ja tallennamme sen käyttämälläAspose.Imaging.DataStreamSupporter.Save(System.String) -menetelmä, tuotanto PNG-kuva 8-bittisellä pixelillä.Sen välttämiseksi ja PNG-kuvan tallentamiseksi 1 bittillä pikseliä kohden, käytä tätä menetelmää saadaksesi vastaavat tallennusvaihtoehdot ja siirtäksesi neAspose.Imaging.Image.Save(System.String,_Wl17.ImagineOptionsBase) -menetelmä on toinen parametri.

public override ImageOptionsBase GetOriginalOptions()

Returns

ImageOptionsBase

Vaihtoehdot perustuvat alkuperäisiin tiedoston asetuksiin.

GetPagesAsEnumerable()

Pidä sivut luettavina.

protected override IEnumerable<image/> GetPagesAsEnumerable()

Returns

IEnumerable < Image >

omia sivuja niin kuin on lueteltu.

Grayscale()

Helppo muuttaa kuvaa grayscale edustukseksi tämän intuitiivisen menetelmän avulla.Ihanteellinen kehittäjille, jotka pyrkivät muuntamaan värikuvia grayscale, yksinkertaistamalla niidenVisualisointi tai analyysi.

public override void Grayscale()

InsertFrame(Sisältää)

Käytännöllisesti sisällytä uusi kehyksesi keräykokoelmaan määritellyssäTämä intuitiivinen menetelmä on ihanteellinen kehittäjille, jotka etsivät tarkkaa hallintaakehysten järjestäminen niiden animaatioissa monivärisissä kuvissa.Uusi kehys luodaan nykyisen kuvan koon mukaan.

public ApngFrame InsertFrame(int index)

Parameters

index int

Se on indeksi.

Returns

ApngFrame

Uudelleen luotu APNG-kehys.

Exceptions

ArgumentOutOfRangeException

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

InsertFrame(Sisältö, RasterImage)

Sisällytä uusi kehys omalle kehykokoelmalle määritellyn indeksiin.Uuden kehyksen sisältö täyttyy määritellystä kuvasta.

public void InsertFrame(int index, RasterImage frameImage)

Parameters

index int

Se on indeksi.

frameImage RasterImage

ja ramiinin kuva.

Exceptions

ArgumentOutOfRangeException

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

ArgumentNullException

FrameImage on nolla.

InsertFrame(RasterImage ja Uint)

Sisällytä uusi kehys omalle kehykokoelmalle määritellyn indeksiin.Uuden kehyksen sisältö täyttyy määritellystä kuvasta.

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

Parameters

index int

Se on indeksi.

frameImage RasterImage

ja ramiinin kuva.

frameTime uint

Ohjelman kesto millisekunnissa.

Exceptions

ArgumentOutOfRangeException

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

ArgumentNullException

FrameImage on nolla.

PopFrameAt(Sisältää)

Poista ja peruuttaa määritellyn indeksin puite keräyksestäsiTämä intuitiivinen menetelmä. täydellinen kehittäjille, jotka etsivät tehokasta hallintaaja niiden animaatioiden puitteissa.

public ApngFrame PopFrameAt(int index)

Parameters

index int

Se on indeksi.

Returns

ApngFrame

Poistettu APNG kerma.

Exceptions

ArgumentOutOfRangeException

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

ReleaseManagedResources()

Varmista, että hallitsemattomia resursseja ei ole vapautettu täällä, koska ne voivat ollajo vapautettu.

protected override void ReleaseManagedResources()

RemoveAllFrames()

Puhdista kehyksesi keräys poistamalla kaikki kehdet tällä intuitiivisella menetelmällä.Ihanteellinen kehittäjille, jotka haluavat asettaa uudelleen tai päivittää animaatioitaan.

public void RemoveAllFrames()

Examples

Seuraava esimerkki näyttää, miten luoda APNG-kuva toisesta rasterin yhden sivun kuvasta.

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(Sisältää)

Poista määritellyn indeksiin kuuluva puite keräyksestäsi turhaanTäydellinen kehittäjille, jotka etsivät sujuvaa kehyksen hallintaamonivaiheisessa kuvassaan.Poistettava kehys poistetaan.

public void RemoveFrameAt(int index)

Parameters

index int

Se on indeksi.

Exceptions

ArgumentOutOfRangeException

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

ResetDefaultImage()

Poista etukäteen asetettu kuva tällä intuitiivisella menetelmällä.Ihanteellinen kehittäjille, jotka haluavat asettaa uudelleen tai poistaa oletusarvoisen kuvan animaatiossaan.Tämän jälkeen oletusarvoinen kuva on ensimmäinen kerma omassa keräykokoelmassa(Tätä menetelmää ei voi poistaa).

public void ResetDefaultImage()

Resize(int, int, resizeTyppi)

Muokkaa kuvaa sujuvasti tällä intuitiivisella menetelmällä. täydellinen kehittäjillepyrkimys säätää niiden kuvien ulottuvuuksia dynaamisesti.

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

Parameters

newWidth int

Ja uusi leveys.

newHeight int

Ja uusi korkeus.

resizeType ResizeType

Tyyppinen reissu.

Resize(int, int, ImageResizeSettings)

ja kuvasta uudelleen.

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

Parameters

newWidth int

Ja uusi leveys.

newHeight int

Ja uusi korkeus.

settings ImageResizeSettings

Siirretään uudelleen asetukset.

ResizeHeightProportionally(Tyyppi, ResizeTyppi)

Helppo säätää kuvan korkeutta säilyttäen samalla sen suhteetTämä intuitiivinen menetelmä. täydellinen kehittäjille, jotka haluavat muokata kuviadynaaminen säilyttäen samalla niiden ulottuvuuden suhteen.

public override void ResizeHeightProportionally(int newHeight, ResizeType resizeType)

Parameters

newHeight int

Ja uusi korkeus.

resizeType ResizeType

Tyyppinen reissu.

ResizeWidthProportionally(Tyyppi, ResizeTyppi)

Suhteellisesti kierrä kuvan leveys vaivattomasti tällä intuitiivisella menetelmällä.Ihanteellinen kehittäjille, jotka pyrkivät ylläpitämään kuviensa näköarvoaSopeutetaan niiden ulottuvuuksia.

public override void ResizeWidthProportionally(int newWidth, ResizeType resizeType)

Parameters

newWidth int

Ja uusi leveys.

resizeType ResizeType

Tyyppinen reissu.

Rotate(Float, Bool ja väri)

Käännä kuva keskipisteensä ympäri vaivattomasti tällä intuitiivisella menetelmällä.Täydellinen kehittäjille, jotka haluavat säätää kuviensa suuntausta dynaamisesti.

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

Parameters

angle float

Kiertävä kulma asteina. Positiiviset arvot kiertävät kelloa.

resizeProportionally bool

jos asetat ’totuus’ sinulla on kuvan koon muutospohjaisesti pyöristetty reikiä (kulmanpisteitä) projektioita muissa tapauksissa, jotka jättävät ulottuvuudet koskemattomat ja vainsisäinen kuva sisältöä kierrätetään.

backgroundColor Color

Taustan väri.

RotateFlip(RotateFlipType)

Tehottomasti manipuloida aktiivista kehystä pyörivällä, ohjaamalla tai molemmatTämä intuitiivinen menetelmä. ihanteellinen kehittäjille, jotka haluavat räätälöidäKuvakehyksen suuntaukset.

public override void RotateFlip(RotateFlipType rotateFlipType)

Parameters

rotateFlipType RotateFlipType

Pyöreä flip tyyppi.

SaveData(Stream)

säästää tietoja.

protected override void SaveData(Stream stream)

Parameters

stream Stream

Virtaa tallentaa tietoja.

SetDefaultImage(RasterImage)

Aseta määritelty raster-kuva nykyisen animaation oletuksenatehottomasti tämän menetelmän kanssa. täydellinen kehittäjille, jotka haluavat räätälöidäAnimaatiot kuvataan heidän animaatiossaan.

public void SetDefaultImage(RasterImage image)

Parameters

image RasterImage

ja kuvasta .

Exceptions

ArgumentNullException

Kuva on nolla.

UpdateDimensions(Sisä, sisä)

Päivitä kuvan ulottuvuudet.

protected override void UpdateDimensions(int newWidth, int newHeight)

Parameters

newWidth int

Uuden kuvan leveys.

newHeight int

Uuden kuvan korkeus.

UpdateMetadata()

Päivitä kuvan metatietoja.

protected override void UpdateMetadata()
 Suomi