Class ApngImage

Class ApngImage

Именује се: Aspose.Imaging.FileFormats.Apng Асамблеја: Aspose.Imaging.dll (25.4.0)

АПИ за анимиране ПНГ (анимирана преносива мрежа графике) слике датотекеформат је универзално решење за програмери који желе да интегришуанимирани садржај у њихове апликације.Овај АПИ нуди широкконтроле над подешавањама оквира, омогућавајући корисницима да дефинишу специфичне оквирепараметри, укључујући трајање круга и подешавања ПНГ датотеке.богатог алата, можете без напора управљати и оптимизовати екранАПНГ слике, увоз и извоз слика, побољшавајући динамику иИнтерактивни аспекти ваше апликације.

[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

Наслеђени чланови

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

Следећи пример показује како извозити формат АПНГ датотеке из другог не-анимираног мулти-страница формата.

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
                                                                                                                     }

Следећи пример показује како извозити у АПНГ формат датотеке.

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
                                                                         }

Следећи пример показује како да креирате АПНГ слику из другог растер-јединствене слике.

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(Апгоптионс, инт, Инт)

Počnite da radite sa Aspose.Imaging.FileFormats.Apng. ApngImage razredom inicijalizovanjemнова инстанција без напора. савршено за програмери који желе да почнукористећи ApngImage објекте брзо и ефикасно у својим пројектима.

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

Parameters

options ApngOptions

о опцијама .

width int

То је ширина.

height int

То је висина.

Properties

DefaultFrameTime

Једноставно прилагођавање дужине подразумеваног оквира за креирање нових рамка саово флексибилно својство. савршено за програмери који траже да прилагоде распоред оквираефикасно у њиховим анимацијама.

public uint DefaultFrameTime { get; set; }

Вредност имовине

uint

Examples

Следећи пример показује како да креирате АПНГ слику из другог растер-јединствене слике.

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

Брзо приступити информацијама о формату датотеке са овом погодном својством.Идеалан за програмери који треба да добију детаље о форматуОд својих АПНГ датотека лако.

public override FileFormat FileFormat { get; }

Вредност имовине

FileFormat

Interlaced

Брзо утврдите да ли је овај објекат ВЛ17.ФилеФорматис.Пнг.БангИмаге интерактанса овом удобном имовином. идеалан за програмери који морају да проверестање интеракције ПНГ слике лако.

public bool Interlaced { get; }

Вредност имовине

bool

NumPlays

Неуспешно контролишете колико пута ваша анимација пролази са овимсвеобухватна имовина. савршено за програмери који траже прецизан контролу наданимационо понашање, са подршком за бесконачно гутање у случајуВредност је једнака 0.

public int NumPlays { get; set; }

Вредност имовине

int

PageCount

Повратак укупног броја страница у својој слици датотеке без напора са овим својством.Идеално за програмери који захтевају брз приступ информацијама о броју страница.

public override int PageCount { get; }

Вредност имовине

int

Pages

Бескорисно приступити страницама ваше слике са овим удобним својством.Савршено за програмери који траже брз и једноставан приступ појединачним страницама за манипулацију.

public override Image[] Pages { get; }

Вредност имовине

Image []

XmpData

Неуспешно управљање XMP метаданима повезаним са вашим датотекама користећи овосвеобухватна имовина. савршено за програмери који траже приступ или ажурирањеМетадане информације са лакоћом.

public override XmpPacketWrapper XmpData { get; set; }

Вредност имовине

XmpPacketWrapper

Methods

AddFrame()

Једноставно причврстите нови оквир на крај ваше колекције оквира са овимједноставна метода. идеалан за програмери који желе да прошире својеДинамична колекција оквира за анимације са мулти-фремом слике.Нови оквир ће бити креиран у зависности од величине тренутне слике.

public ApngFrame AddFrame()

Returns

ApngFrame

Недавно створен АПНГ оквир.

AddFrame(RasterImage)

Неуспешно проширите своју колекцију оквира додавањем нове оквире до крајаса овим интуитивним методом. савршено за програмери који траже да побољшају својеАнимације мулти-фреме слике динамично.Садржај новог оквира ће бити попуњен са одређене слике.

public void AddFrame(RasterImage frameImage)

Parameters

frameImage RasterImage

Слике из оквира.

Examples

Следећи пример показује како да креирате АПНГ слику из другог растер-јединствене слике.

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

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

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

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

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

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

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

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

                                                                                                              apngImage.Save();
                                                                                                          }
                                                                                                      }

Exceptions

ArgumentNullException

FrameImage je nula.

AddFrame(РастерИмаге, Уинт)

Проширите своју колекцију оквира беспрекорно причвршћујући нови оквир наса овим интуитивним методом. идеалан за програмери који желе да обогате својеАнимације мулти-фреме слике.Садржај новог оквира ће бити попуњен са одређене слике.

public void AddFrame(RasterImage frameImage, uint frameTime)

Parameters

frameImage RasterImage

Слике из оквира.

frameTime uint

Рам трајања, у милисекундима.

Exceptions

ArgumentNullException

FrameImage je nula.

AddPage(RasterImage)

Додајте нову страницу на слику без напора са овим интуитивним методом.Савршено за програмери који траже да динамично проширују садржај својих сличних датотека.

public void AddPage(RasterImage page)

Parameters

page RasterImage

Странице које треба додати.

Exceptions

ArgumentNullException

page’ is null.

AdjustBrightness(Инт)

Једноставно прилагодите светлост слике <код класа=“парамеф”> са овим интуитивним методом,користећи одређени параметар светлости.Идеалан за програмери који траже да динамично побољшају или смањују укупну сјајност слика.

public override void AdjustBrightness(int brightness)

Parameters

brightness int

вредност светлости .

AdjustContrast(Флоат)

Побољшати контраст Aspose.Imaging.Имеда се детаљи издвајају са овим интуитивним методом. идеалан за програмериДа би се побољшала визуелна јасноћа и утицај њихових слика динамично.

public override void AdjustContrast(float contrast)

Parameters

contrast float

Вредност контраста (у опсегу [-100; 100])

AdjustGamma(Флоат)

Примените гама корекцију на слику користећи коефицијент плутајуће тачкеса овом интуитивном методом. идеалан за програмери који траже прецизну контролу бојеу њиховим сликама.

public override void AdjustGamma(float gamma)

Parameters

gamma float

Гама за коефицијент црвених, зелених и плавих канала

AdjustGamma(пловила, пловила и пловила)

Извршите гама корекцију на слици одвојено за црвене, зелене и плаве каналекористећи појединачне коефицијенте са овим интуитивним методом. идеалан за програмери који тражеда фино-туне баланс боја и побољшати визуелну квалитет њихових слика.

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

Parameters

gammaRed float

Гама за коефицијент црвеног канала

gammaGreen float

Гама за зелени канал коефицијент

gammaBlue float

Гама за коефицијент плавог канала

BinarizeBradley(Двоструки, инт)

Бинаризација слике користећи алгоритам за адаптивну границу Бредлеи користећи интегралну границу слике

public override void BinarizeBradley(double brightnessDifference, int windowSize)

Parameters

brightnessDifference double

Разлика у светлости између пиксела и просека прозора с x с пикселаТо је око овог пиксела.

windowSize int

Величина s x s прозора пиксела усредсређен око овог пиксела

BinarizeFixed(Бајте)

Неуспешно бинарни слику користећи претходно дефинисани праг са овимИнтуитивна метода. идеалан за програмери који траже да конвертују слике у бинарну форму,поједностављају их за даље обраду или анализу.

public override void BinarizeFixed(byte threshold)

Parameters

threshold byte

Ако је одговарајућа сива вредност пиксела већа од границе,255 ће му бити додељено, 0 другачије.

BinarizeOtsu()

Извршите бинарнизацију на слици користећи Оцу гранични са овим интуитивним методом.Идеалан за програмери који траже да аутоматски утврде оптималну границу законвертирајући слике у бинарну форму, побољшавајући њихову јасноћу и прилагодљивост за даље анализе.

public override void BinarizeOtsu()

Crop(Rectangle)

Неуспешно узгајати слику да се фокусира на одређене области са овим интуитивним методом.Савршено за програмери који траже да динамично побољшају састав својих слика.

public override void Crop(Rectangle rectangle)

Parameters

rectangle Rectangle

То је правоугао.

Crop(int, int, int, int)

Посадите слику док прилагођавате промене беспрекорно са овим интуитивним методом.Идеалан за програмери који траже прецизну контролу над процесом сакупљањада се фокусирају на одређене области њихових АПНГ слика.

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

Parameters

leftShift int

Левица се мења.

rightShift int

И прави промен.

topShift int

На врхунском прелазу.

bottomShift int

Доњи промен.

Dither(ДитарингМетод, инт, ИцлорПалет)

Једноставно примените ефекте дитирања на тренутну слику са овим интуитивним методом.Идеалан за програмери који желе да додају текстуру или смањују боје у њиховим сликама.

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

Parameters

ditheringMethod DitheringMethod

То је дитринг метода.

bitsCount int

Последњи битови рачунају за дитирање.

customPalette IColorPalette

Прилагођена палета за дитирање.

Filter(Ректонгле, ФилтерОпцијеБазе)

Бескорисно примените филтере на одређени правоугао слике са овимИнтуитивна метода. савршен за програмери који траже да побољшају или модификују одређене области.

public override void Filter(Rectangle rectangle, FilterOptionsBase options)

Parameters

rectangle Rectangle

То је правоугао.

options FilterOptionsBase

о опцијама .

GetDefaultOptions(Објекат[])

Поправити подразумеване опције без напора са овим једноставним методом.Идеалан за програмери који траже брз приступ подразумеваним подешавањама Апнг слике.

public override ImageOptionsBase GetDefaultOptions(object[] args)

Parameters

args object []

i argumentima .

Returns

ImageOptionsBase

Default opcije

GetModifyDate(Боол)

Брзо добити датум и време када је слика ресурса последње модификованаса овим корисничким методом. идеалан за програмери који морају пратити променеЕфикасно управљати ресурсима.

public override DateTime GetModifyDate(bool useDefault)

Parameters

useDefault bool

ако је постављен на “истину”, користите информације из FileInfo као подразумевану вредност.

Returns

DateTime

Датум и време слике ресурса је последњи пут модификован.

GetOriginalOptions()

Опоравите опције засноване на оригиналним подешавањама датотеке без напора са овим интуитивним методом.Савршено за програмери који траже да приступе и користе подешавања која одговарају карактеристикамаиз оригиналне фајлове.Ово може бити корисно за одржавање детаљне дубине и других параметара оригиналне слике непромењене.На пример, ако наплаћујемо црно-белу ПНГ слику са 1 битом по пикселу, а затим га сачувате користећиAspose.Imaging.DataStreamSupporter.Save(System.String) метода, излазна ПНГ слика са 8 бита по пикселу ће бити произведена.Да бисте то избегли и сачували ПНГ слику са 1 битом по пикселу, користите ову методу да бисте добили одговарајуће опције за штедњу и прошли их.до метода Aspose.Imaging.Image.Save(System.String,_Wl17.ImageOptionsBase) као други параметар.

public override ImageOptionsBase GetOriginalOptions()

Returns

ImageOptionsBase

Опције засноване на оригиналним поставкама датотеке.

GetPagesAsEnumerable()

Добијте странице на бројни начин.

protected override IEnumerable<image/> GetPagesAsEnumerable()

Returns

IEnumerable < Image >

Своје странице као набројавајуће.

Grayscale()

Једноставно претворити слику у његову графичку репрезентацију са овим интуитивним методом.Идеалан за програмери који траже да конвертују боје слике у сива скала, поједностављајући њиховепроцеса визуелизације или анализе.

public override void Grayscale()

InsertFrame(Инт)

Неуспешно убаците нови оквир у своју колекцију оквира на одређеномса овим интуитивним методом. идеалан за програмери који траже прецизну контролу надУређење оквира у њиховим анимацијама мулти-фрам слике.Нови оквир ће бити креиран у зависности од величине тренутне слике.

public ApngFrame InsertFrame(int index)

Parameters

index int

То је индекс.

Returns

ApngFrame

Недавно створен АПНГ оквир.

Exceptions

ArgumentOutOfRangeException

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

InsertFrame(ИТ, РастерИмаге)

Унесите нови оквир у сопствену колекцију оквира на одређеном индексу.Садржај новог оквира ће бити попуњен са одређене слике.

public void InsertFrame(int index, RasterImage frameImage)

Parameters

index int

То је индекс.

frameImage RasterImage

Слике из оквира.

Exceptions

ArgumentOutOfRangeException

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

ArgumentNullException

FrameImage je nula.

InsertFrame(ит, растеримаге, уинт)

Унесите нови оквир у сопствену колекцију оквира на одређеном индексу.Садржај новог оквира ће бити попуњен са одређене слике.

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

Parameters

index int

То је индекс.

frameImage RasterImage

Слике из оквира.

frameTime uint

Рам трајања, у милисекундима.

Exceptions

ArgumentOutOfRangeException

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

ArgumentNullException

FrameImage je nula.

PopFrameAt(Инт)

Уклоните и вратите оквир на одређеном индексу из ваше колекције оквираса овим интуитивним методом. савршено за програмери који траже ефикасно управљањеу њиховим анимацијама.

public ApngFrame PopFrameAt(int index)

Parameters

index int

То је индекс.

Returns

ApngFrame

Уклоњени АПНГ оквир.

Exceptions

ArgumentOutOfRangeException

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

ReleaseManagedResources()

Ослобађа управљане ресурсе. Уверите се да се овде не објављују неконтролисани ресурси, јер они могу битиВећ је ослобођен.

protected override void ReleaseManagedResources()

RemoveAllFrames()

Очистите своју колекцију оквира уклоните све оквире овим интуитивним методом.Идеалан за програмери који траже да рестаутирају или обнављају своје анимације.

public void RemoveAllFrames()

Examples

Следећи пример показује како да креирате АПНГ слику из другог растер-јединствене слике.

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(Инт)

Уклоните оквир на одређеном индексу из ваше колекције оквира беспрекорноса овим методом. савршено за програмери који траже усклађено управљање оквиримау својим мулти-фрамним сликама.Рамка која ће бити уклоњена биће укинута.

public void RemoveFrameAt(int index)

Parameters

index int

То је индекс.

Exceptions

ArgumentOutOfRangeException

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

ResetDefaultImage()

Уклоните претходно постављену подразумевану слику овим интуитивним методом.Идеалан за програмери који траже да поново постављају или очисте подразумевани слику у својој анимацији.Након тога, по подразумевању слика је први оквир у сопственој колекцији оквира(То се не може уклонити користећи овај метод).

public void ResetDefaultImage()

Resize(int, int, resizeType)

Рециклирајте слику беспрекорно овим интуитивним методом. савршено за програмериПокушајте да прилагодите димензије својих слика динамично.

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

Parameters

newWidth int

Нова ширина је.

newHeight int

Нова висина је.

resizeType ResizeType

Тип рецидива .

Resize(int, int, ImageResizeСеттингс)

Рециклирају слику.

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

Parameters

newWidth int

Нова ширина је.

newHeight int

Нова висина је.

settings ImageResizeSettings

Успостављају се подешавања.

ResizeHeightProportionally(Инт, РезимеТип)

Неуспешно прилагођавање висине ваше слике док одржава његове пропорцијеса овим интуитивним методом. савршено за програмери који желе да рецимирају сликединамично, уз очување њиховог аспектног односа.

public override void ResizeHeightProportionally(int newHeight, ResizeType resizeType)

Parameters

newHeight int

Нова висина је.

resizeType ResizeType

Тип резиме.

ResizeWidthProportionally(Инт, РезимеТип)

Пропорционално резимирајте ширину слике без напора са овим интуитивним методом.Идеалан за програмери који траже да одржавају однос аспекта својих слика докПрилагођавање њихових димензија.

public override void ResizeWidthProportionally(int newWidth, ResizeType resizeType)

Parameters

newWidth int

Нова ширина је.

resizeType ResizeType

Тип резиме.

Rotate(флот, боол, боја)

Окрените слику око његовог центра без напора са овим интуитивним методом.Савршено за програмери који траже да динамички прилагоде оријентацију својих слика.

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

Parameters

angle float

Угао ротације у степени. позитивне вредности ће ротирати сат.

resizeProportionally bool

ако сте постављени на ‘истину’ ћете имати своју величину слике промењене у зависности од ротираног правоугао (корене тачке) пројекције у другом случају које остављају димензије нетакнуте и само унутрашњости садржај слики су ротирани.

backgroundColor Color

Боја позадине.

RotateFlip(RotateFlipType)

Неуспешно манипулише активним оквиром ротирањем, флипирањем или обаса овом интуитивном методом. идеалан за програмери који траже да прилагодеОријентација слике оквира.

public override void RotateFlip(RotateFlipType rotateFlipType)

Parameters

rotateFlipType RotateFlipType

Тип ротираног флипа.

SaveData(Stream)

Sačuvajte podatke.

protected override void SaveData(Stream stream)

Parameters

stream Stream

Поток да сачувате податке на.

SetDefaultImage(RasterImage)

Поставите одређену растер слику као по подразумевању слике за тренутну анимацијубескорисно са овим методом. савршено за програмери који траже да прилагодеДефинисана слика у њиховим анимацијама.

public void SetDefaultImage(RasterImage image)

Parameters

image RasterImage

и слику .

Exceptions

ArgumentNullException

Слика је нула.

UpdateDimensions(Инт, Инт)

Ажурирајте димензије слике.

protected override void UpdateDimensions(int newWidth, int newHeight)

Parameters

newWidth int

Нова ширина слике.

newHeight int

Нова висина слике.

UpdateMetadata()

Ажурирајте метадане слике.

protected override void UpdateMetadata()
 Српски