Class ApngImage
A név: Aspose.Imaging.FileFormats.Apng Összefoglaló: Aspose.Imaging.dll (25.4.0)
Animált PNG (Animated Portable Network Graphics) képfájlA formatum sokoldalú megoldás a fejlesztők számára, akik integrálni akarnakanimált tartalom az alkalmazásokba. Ez az API kiterjedta keretbeállítások ellenőrzése, lehetővé téve a felhasználók számára, hogy meghatározzák a keretrendszertparaméterek, beleértve a loop hossza és a PNG fájl beállításait.funkció-gazdag eszköz, könnyedén kezelheti és optimalizálja a kijelzőtaz APNG képek, import és export képeket, javítva a dinamikát ésAz Ön alkalmazásainak interaktív aspektusa.
[JsonObject(MemberSerialization.OptIn)]
public sealed class ApngImage : RasterCachedMultipageImage, IDisposable, IObjectWithBounds, IRasterImageArgb32PixelLoader, IRasterImageRawDataLoader, IHasXmpData, IHasMetadata, IMultipageImageExt, IMultipageImage
Inheritance
object ← DisposableObject ← DataStreamSupporter ← Image ← RasterImage ← RasterCachedImage ← RasterCachedMultipageImage ← ApngImage
Implements
IDisposable , IObjectWithBounds , IRasterImageArgb32PixelLoader , IRasterImageRawDataLoader , IHasXmpData , IHasMetadata , IMultipageImageExt , IMultipageImage
Örökletes tagok
RasterCachedMultipageImage.AdjustBrightness(int) , RasterCachedMultipageImage.AdjustContrast(float) , RasterCachedMultipageImage.AdjustGamma(float, float, float) , RasterCachedMultipageImage.AdjustGamma(float) , RasterCachedMultipageImage.Blend(Point, RasterImage, Rectangle, byte) , RasterCachedMultipageImage.BinarizeFixed(byte) , RasterCachedMultipageImage.BinarizeBradley(double, int) , RasterCachedMultipageImage.BinarizeBradley(double) , RasterCachedMultipageImage.BinarizeOtsu() , RasterCachedMultipageImage.Crop(Rectangle) , RasterCachedMultipageImage.Crop(int, int, int, int) , RasterCachedMultipageImage.Dither(DitheringMethod, int, IColorPalette) , RasterCachedMultipageImage.Grayscale() , RasterCachedMultipageImage.NormalizeHistogram() , RasterCachedMultipageImage.Rotate(float, bool, Color) , RasterCachedMultipageImage.RotateFlip(RotateFlipType) , RasterCachedMultipageImage.RotateFlipAll(RotateFlipType) , RasterCachedMultipageImage.Resize(int, int, ResizeType) , RasterCachedMultipageImage.Resize(int, int, ImageResizeSettings) , RasterCachedMultipageImage.ResizeWidthProportionally(int, ResizeType) , RasterCachedMultipageImage.ResizeHeightProportionally(int, ResizeType) , RasterCachedMultipageImage.ReplaceColor(int, byte, int) , RasterCachedMultipageImage.ReplaceNonTransparentColors(int) , RasterCachedMultipageImage.Filter(Rectangle, FilterOptionsBase) , RasterCachedMultipageImage.NormalizeAngle(bool, Color) , RasterCachedMultipageImage.CacheData() , RasterCachedMultipageImage.GetSerializedStream(ImageOptionsBase, Rectangle, out int) , RasterCachedMultipageImage.Height , RasterCachedMultipageImage.Width , RasterCachedMultipageImage.BitsPerPixel , RasterCachedMultipageImage.IsCached , RasterCachedMultipageImage.PageCount , RasterCachedMultipageImage.Pages , RasterCachedMultipageImage.HasAlpha , RasterCachedMultipageImage.HasTransparentColor , RasterCachedMultipageImage.ImageOpacity , RasterCachedMultipageImage.BackgroundColor , RasterCachedMultipageImage.XmpData , RasterCachedMultipageImage.PageExportingAction , RasterCachedImage.CacheData() , RasterCachedImage.Blend(Point, RasterImage, Rectangle, byte) , RasterCachedImage.Resize(int, int, ResizeType) , RasterCachedImage.Resize(int, int, ImageResizeSettings) , RasterCachedImage.RotateFlip(RotateFlipType) , RasterCachedImage.Rotate(float, bool, Color) , RasterCachedImage.Crop(Rectangle) , RasterCachedImage.Dither(DitheringMethod, int, IColorPalette) , RasterCachedImage.Grayscale() , RasterCachedImage.NormalizeHistogram() , RasterCachedImage.BinarizeFixed(byte) , RasterCachedImage.BinarizeOtsu() , RasterCachedImage.BinarizeBradley(double, int) , RasterCachedImage.BinarizeBradley(double) , RasterCachedImage.AdjustBrightness(int) , RasterCachedImage.AdjustContrast(float) , RasterCachedImage.AdjustGamma(float, float, float) , RasterCachedImage.AdjustGamma(float) , RasterCachedImage.IsCached , RasterImage.RemoveMetadata() , RasterImage.Save(Stream, ImageOptionsBase, Rectangle) , RasterImage.GetModifyDate(bool) , RasterImage.Dither(DitheringMethod, int) , RasterImage.Dither(DitheringMethod, int, IColorPalette) , RasterImage.GetDefaultPixels(Rectangle, IPartialArgb32PixelLoader) , RasterImage.GetDefaultRawData(Rectangle, IPartialRawDataLoader, RawDataSettings) , RasterImage.GetDefaultArgb32Pixels(Rectangle) , RasterImage.GetDefaultRawData(Rectangle, RawDataSettings) , RasterImage.GetArgb32Pixel(int, int) , RasterImage.GetPixel(int, int) , RasterImage.SetArgb32Pixel(int, int, int) , RasterImage.SetPixel(int, int, Color) , RasterImage.ReadScanLine(int) , RasterImage.ReadArgb32ScanLine(int) , RasterImage.WriteScanLine(int, Color[]) , RasterImage.WriteArgb32ScanLine(int, int[]) , RasterImage.LoadPartialArgb32Pixels(Rectangle, IPartialArgb32PixelLoader) , RasterImage.LoadPartialPixels(Rectangle, IPartialPixelLoader) , RasterImage.LoadArgb32Pixels(Rectangle) , RasterImage.LoadArgb64Pixels(Rectangle) , RasterImage.LoadPartialArgb64Pixels(Rectangle, IPartialArgb64PixelLoader) , RasterImage.LoadPixels(Rectangle) , RasterImage.LoadCmykPixels(Rectangle) , RasterImage.LoadCmyk32Pixels(Rectangle) , RasterImage.LoadRawData(Rectangle, RawDataSettings, IPartialRawDataLoader) , RasterImage.LoadRawData(Rectangle, Rectangle, RawDataSettings, IPartialRawDataLoader) , RasterImage.SaveRawData(byte[], int, Rectangle, RawDataSettings) , RasterImage.SaveArgb32Pixels(Rectangle, int[]) , RasterImage.SavePixels(Rectangle, Color[]) , RasterImage.SaveCmykPixels(Rectangle, CmykColor[]) , RasterImage.SaveCmyk32Pixels(Rectangle, int[]) , RasterImage.SetResolution(double, double) , RasterImage.SetPalette(IColorPalette, bool) , RasterImage.Resize(int, int, ImageResizeSettings) , RasterImage.Rotate(float, bool, Color) , RasterImage.Rotate(float) , RasterImage.BinarizeFixed(byte) , RasterImage.BinarizeOtsu() , RasterImage.BinarizeBradley(double) , RasterImage.BinarizeBradley(double, int) , RasterImage.Blend(Point, RasterImage, Rectangle, byte) , RasterImage.Blend(Point, RasterImage, byte) , RasterImage.Grayscale() , RasterImage.NormalizeHistogram() , RasterImage.AdjustBrightness(int) , RasterImage.AdjustContrast(float) , RasterImage.AdjustGamma(float, float, float) , RasterImage.AdjustGamma(float) , RasterImage.GetSkewAngle() , RasterImage.NormalizeAngle() , RasterImage.NormalizeAngle(bool, Color) , RasterImage.Filter(Rectangle, FilterOptionsBase) , RasterImage.ReplaceColor(Color, byte, Color) , RasterImage.ReplaceColor(int, byte, int) , RasterImage.ReplaceNonTransparentColors(Color) , RasterImage.ReplaceNonTransparentColors(int) , RasterImage.ToBitmap() , RasterImage.PremultiplyComponents , RasterImage.UseRawData , RasterImage.UpdateXmpData , RasterImage.XmpData , RasterImage.RawIndexedColorConverter , RasterImage.RawCustomColorConverter , RasterImage.RawFallbackIndex , RasterImage.RawDataSettings , RasterImage.UsePalette , RasterImage.RawDataFormat , RasterImage.RawLineSize , RasterImage.IsRawDataAvailable , RasterImage.HorizontalResolution , RasterImage.VerticalResolution , RasterImage.HasTransparentColor , RasterImage.HasAlpha , RasterImage.TransparentColor , RasterImage.ImageOpacity , Image.CanLoad(string) , Image.CanLoad(string, LoadOptions) , Image.CanLoad(Stream) , Image.CanLoad(Stream, LoadOptions) , Image.Create(ImageOptionsBase, int, int) , Image.Create(Image[]) , Image.Create(MultipageCreateOptions) , Image.Create(string[], bool) , Image.Create(string[]) , Image.Create(Image[], bool) , Image.GetFileFormat(string) , Image.GetFileFormat(Stream) , Image.GetFittingRectangle(Rectangle, int, int) , Image.GetFittingRectangle(Rectangle, int[], int, int) , Image.Load(string, LoadOptions) , Image.Load(string) , Image.Load(Stream, LoadOptions) , Image.Load(Stream) , Image.GetProportionalWidth(int, int, int) , Image.GetProportionalHeight(int, int, int) , Image.RemoveMetadata() , Image.CanSave(ImageOptionsBase) , Image.Resize(int, int) , Image.Resize(int, int, ResizeType) , Image.Resize(int, int, ImageResizeSettings) , Image.GetDefaultOptions(object[]) , Image.GetOriginalOptions() , Image.ResizeWidthProportionally(int) , Image.ResizeHeightProportionally(int) , Image.ResizeWidthProportionally(int, ResizeType) , Image.ResizeHeightProportionally(int, ResizeType) , Image.ResizeWidthProportionally(int, ImageResizeSettings) , Image.ResizeHeightProportionally(int, ImageResizeSettings) , Image.RotateFlip(RotateFlipType) , Image.Rotate(float) , Image.Crop(Rectangle) , Image.Crop(int, int, int, int) , Image.Save() , Image.Save(string) , Image.Save(string, ImageOptionsBase) , Image.Save(string, ImageOptionsBase, Rectangle) , Image.Save(Stream, ImageOptionsBase) , Image.Save(Stream, ImageOptionsBase, Rectangle) , Image.GetSerializedStream(ImageOptionsBase, Rectangle, out int) , Image.SetPalette(IColorPalette, bool) , Image.BitsPerPixel , Image.Bounds , Image.Container , Image.Height , Image.Palette , Image.UsePalette , Image.Size , Image.Width , Image.InterruptMonitor , Image.BufferSizeHint , Image.AutoAdjustPalette , Image.HasBackgroundColor , Image.FileFormat , Image.BackgroundColor , DataStreamSupporter.CacheData() , DataStreamSupporter.Save() , DataStreamSupporter.Save(Stream) , DataStreamSupporter.Save(string) , DataStreamSupporter.Save(string, bool) , DataStreamSupporter.DataStreamContainer , DataStreamSupporter.IsCached , DisposableObject.Dispose() , DisposableObject.Disposed , object.GetType() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Examples
Az alábbi példa azt mutatja, hogyan kell exportálni apng APNG fájlformátum más nem animált többoldalú formátum.
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using (Image image = Image.Load("img4.tif")) {
// Setting up the default frame duration
image.Save("img4.tif.500ms.png", new ApngOptions() { DefaultFrameTime = 500 }); // 500 ms
image.Save("img4.tif.250ms.png", new ApngOptions() { DefaultFrameTime = 250 }); // 250 ms
}
Az alábbi példa azt mutatja, hogyan kell exportálni az APNG fájl formátum.
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using (Image image = Image.Load("Animation1.webp")) {
// Export to APNG animation with unlimited animation cycles as default
image.Save("Animation1.webp.png", new ApngOptions());
// Setting up animation cycles
image.Save("Animation2.webp.png", new ApngOptions() { NumPlays = 5 }); // 5 cycles
}
Az alábbi példa azt mutatja, hogyan kell létrehozni egy APNG képet egy másik raster egyoldalú kép.
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.FileFormats.Apng;
const int AnimationDuration = 1000; // 1 s
const int FrameDuration = 70; // 70 ms
using (RasterImage sourceImage = (RasterImage)Image.Load("not_animated.png"))
{
ApngOptions createOptions = new ApngOptions
{
Source = new FileCreateSource("raster_animation.png", false),
DefaultFrameTime = (uint)FrameDuration,
ColorType = PngColorType.TruecolorWithAlpha,
};
using (ApngImage apngImage = (ApngImage)Image.Create(
createOptions,
sourceImage.Width,
sourceImage.Height))
{
// It is possible to set image default frame time there: apngImage.DefaultFrameTime = (uint)FrameDuration;
int numOfFrames = AnimationDuration / FrameDuration;
int numOfFrames2 = numOfFrames / 2;
// Cleaning because the image contains one frame by default
apngImage.RemoveAllFrames();
// add first frame
apngImage.AddFrame(sourceImage);
// add intermediate frames
for (int frameIndex = 1; frameIndex < numOfFrames - 1; ++frameIndex)
{
apngImage.AddFrame(sourceImage);
ApngFrame lastFrame = (ApngFrame)apngImage.Pages[apngImage.PageCount - 1];
float gamma = frameIndex >= numOfFrames2 ? numOfFrames - frameIndex - 1 : frameIndex;
lastFrame.AdjustGamma(gamma);
}
// add last frame
apngImage.AddFrame(sourceImage);
apngImage.Save();
}
}
Constructors
ApngImage(Az ApngOptions, int és int)
Kezdje a munkát a Aspose.Imaging.FileFormats.Apng. ApngImage osztály kezdeményezésévelEgy új példány erőteljesen. tökéletes a fejlesztők számára, akik el akarják kezdeniAz ApngImage objektumokat gyorsan és hatékonyan használja a projektekben.
public ApngImage(ApngOptions options, int width, int height)
Parameters
options
ApngOptions
Az opciók.
width
int
A szélesség.
height
int
A magasság.
Properties
DefaultFrameTime
Könnyen beállíthatja az alapértelmezett keret időtartamát, hogy új kereteket hozzon létreEz a rugalmas tulajdonság. tökéletes a fejlesztők számára, akik a keretrendszer időzítését szeretnék személyre szabnihatékonyan az animációkban.
public uint DefaultFrameTime { get; set; }
ingatlan értéke
Examples
Az alábbi példa azt mutatja, hogyan kell létrehozni egy APNG képet egy másik raster egyoldalú kép.
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.FileFormats.Apng;
const int AnimationDuration = 1000; // 1 s
const int FrameDuration = 70; // 70 ms
using (RasterImage sourceImage = (RasterImage)Image.Load("not_animated.png"))
{
ApngOptions createOptions = new ApngOptions
{
Source = new FileCreateSource("raster_animation.png", false),
DefaultFrameTime = (uint)FrameDuration,
ColorType = PngColorType.TruecolorWithAlpha,
};
using (ApngImage apngImage = (ApngImage)Image.Create(
createOptions,
sourceImage.Width,
sourceImage.Height))
{
// It is possible to set image default frame time there: apngImage.DefaultFrameTime = (uint)FrameDuration;
int numOfFrames = AnimationDuration / FrameDuration;
int numOfFrames2 = numOfFrames / 2;
// Cleaning because the image contains one frame by default
apngImage.RemoveAllFrames();
// add first frame
apngImage.AddFrame(sourceImage);
// add intermediate frames
for (int frameIndex = 1; frameIndex < numOfFrames - 1; ++frameIndex)
{
apngImage.AddFrame(sourceImage);
ApngFrame lastFrame = (ApngFrame)apngImage.Pages[apngImage.PageCount - 1];
float gamma = frameIndex >= numOfFrames2 ? numOfFrames - frameIndex - 1 : frameIndex;
lastFrame.AdjustGamma(gamma);
}
// add last frame
apngImage.AddFrame(sourceImage);
apngImage.Save();
}
}
FileFormat
Gyorsan hozzáférhet a fájlformátumra vonatkozó információkhoz ezzel a kényelmes tulajdonsággal.Ideális azoknak a fejlesztőknek, akiknek meg kell szerezniük a formátum részleteitAz Apng fájlokat könnyen.
public override FileFormat FileFormat { get; }
ingatlan értéke
Interlaced
Gyorsan meghatározzuk, hogy ez a Aspose.Imaging.FileFormats.Png. PngImage objektum összekapcsolódik-eEz a kényelmes ingatlan. ideális a fejlesztők, hogy ellenőrizzeA PNG képek összekapcsolásának állapotát könnyen.
public bool Interlaced { get; }
ingatlan értéke
NumPlays
Könnyedén ellenőrizze, hogy mennyi alkalommal fut az animáció ezzelsokoldalú tulajdonság. tökéletes a fejlesztők számára, akik pontos ellenőrzést keresnekanimációs viselkedés, az infinite looping támogatásával aAz érték egyenlő a 0.
public int NumPlays { get; set; }
ingatlan értéke
PageCount
Visszaállítsa a teljes számú oldalt a képfájlban keményen ezzel a tulajdonsággal.Ideális azoknak a fejlesztőknek, akik gyors hozzáférést igényelnek az oldalszámítási információkhoz.
public override int PageCount { get; }
ingatlan értéke
Pages
Könnyedén hozzáférhet a kép oldalaihoz ezzel a kényelmes tulajdonsággal.Ideális azoknak a fejlesztőknek, akik gyors és könnyű hozzáférést keresnek az egyes oldalakhoz a manipulációhoz.
public override Image[] Pages { get; }
ingatlan értéke
Image []
XmpData
Könnyedén kezeli a fájlokkal összefüggő XMP metadatait ezzelsokoldalú tulajdonság. tökéletes a fejlesztők számára, akik hozzáférést vagy frissítést keresnekA metadata könnyedén elérhető.
public override XmpPacketWrapper XmpData { get; set; }
ingatlan értéke
Methods
AddFrame()
Egyszerűen csatlakoztassa egy új keretet a keretek gyűjteményének végére ezzelEgyszerű módszer. ideális a fejlesztők, akik szeretnék bővíteni a sajátframe gyűjtemény dinamikusan animációk multi-frame képek.Új keretet hoz létre a jelenlegi kép méretének megfelelően.
public ApngFrame AddFrame()
Returns
Az újonnan létrehozott APNG keret.
AddFrame(RasterImage)
Könnyedén bővíti a keretgyűjteményt egy új keret hozzáadásával a végéreEzzel az intuitív módszerrel. tökéletes a fejlesztők számára, akik megpróbálják javítani aA multi-frame képek animációja dinamikusan.Az új keret tartalma a megadott képből lesz kitöltve.
public void AddFrame(RasterImage frameImage)
Parameters
frameImage
RasterImage
A keret kép.
Examples
Az alábbi példa azt mutatja, hogyan kell létrehozni egy APNG képet egy másik raster egyoldalú kép.
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.FileFormats.Apng;
const int AnimationDuration = 1000; // 1 s
const int FrameDuration = 70; // 70 ms
using (RasterImage sourceImage = (RasterImage)Image.Load("not_animated.png"))
{
ApngOptions createOptions = new ApngOptions
{
Source = new FileCreateSource("raster_animation.png", false),
DefaultFrameTime = (uint)FrameDuration,
ColorType = PngColorType.TruecolorWithAlpha,
};
using (ApngImage apngImage = (ApngImage)Image.Create(
createOptions,
sourceImage.Width,
sourceImage.Height))
{
// It is possible to set image default frame time there: apngImage.DefaultFrameTime = (uint)FrameDuration;
int numOfFrames = AnimationDuration / FrameDuration;
int numOfFrames2 = numOfFrames / 2;
// Cleaning because the image contains one frame by default
apngImage.RemoveAllFrames();
// add first frame
apngImage.AddFrame(sourceImage);
// add intermediate frames
for (int frameIndex = 1; frameIndex < numOfFrames - 1; ++frameIndex)
{
apngImage.AddFrame(sourceImage);
ApngFrame lastFrame = (ApngFrame)apngImage.Pages[apngImage.PageCount - 1];
float gamma = frameIndex >= numOfFrames2 ? numOfFrames - frameIndex - 1 : frameIndex;
lastFrame.AdjustGamma(gamma);
}
// add last frame
apngImage.AddFrame(sourceImage);
apngImage.Save();
}
}
Exceptions
A frameImage nulla.
AddFrame(Székelyfehérvár, Uint)
Kiterjeszti a keretrendszer gyűjteményét azáltal, hogy egy új keretet alkalmaz aEz az intuitív módszer. ideális a fejlesztők, akik szeretnék gazdagítani a sajátA többdimenziós képek animációja.Az új keret tartalma a megadott képből lesz kitöltve.
public void AddFrame(RasterImage frameImage, uint frameTime)
Parameters
frameImage
RasterImage
A keret kép.
frameTime
uint
A keretrendszer időtartama millisekunderben.
Exceptions
A frameImage nulla.
AddPage(RasterImage)
Hozzon hozzá egy új oldalt a képhez keményen ezzel az intuitív módszerrel.Ideális azoknak a fejlesztőknek, akik dinamikusan szeretnék bővíteni a képfájlok tartalmát.
public void AddPage(RasterImage page)
Parameters
page
RasterImage
Az oldal hozzáadása.
Exceptions
page’ is null.
AdjustBrightness(int)
Könnyen beállíthatja a világosságot" a kép ezzel az intuitív módszerrel,a meghatározott világosság paraméterét használva.Ideális a fejlesztők számára, akik dinamikusan szeretnék javítani vagy csökkenteni az összes kép fényességét.
public override void AdjustBrightness(int brightness)
Parameters
brightness
int
A fény értéke.
AdjustContrast(Flotta)
Javítja a kontrasztot a Aspose.Imaging.Imagehogy a részletek kiemelkedjenek ezzel az intuitív módszerrel. ideális a fejlesztők számáramegpróbálják dinamikusan javítani a képek vizuális világosságát és hatását.
public override void AdjustContrast(float contrast)
Parameters
contrast
float
A kontraszt értéke (tartományban [-100; 100])
AdjustGamma(Flotta)
Gamma korrekció alkalmazása a képhez egy úszási pont koefficiens használatávalEz az intuitív módszer. ideális a fejlesztők számára, akik pontos színellenőrzést keresnekAz ő képükben.
public override void AdjustGamma(float gamma)
Parameters
gamma
float
Gamma a vörös, zöld és kék csatornák koefficiens
AdjustGamma(hajó, hajó, hajó)
Gamma korrekciót végezzen a képen külön-külön a vörös, zöld és kék csatornákonaz egyéni koefficiensek használata ezzel az intuitív módszerrel. ideális a fejlesztők számára, akik keresika finom színek egyensúlyát és javítja a képek vizuális minőségét.
public override void AdjustGamma(float gammaRed, float gammaGreen, float gammaBlue)
Parameters
gammaRed
float
Gamma a vörös csatorna koefficienshez
gammaGreen
float
Gamma a zöld csatorna koefficienshez
gammaBlue
float
Gamma a kék csatorna koefficienshez
BinarizeBradley(kettős, int)
A kép binarizálása a Bradley adaptív küszöbérték algoritmusával az integrált kép küszöbértékével
public override void BinarizeBradley(double brightnessDifference, int windowSize)
Parameters
brightnessDifference
double
A pixel és a s x s ablak közötti fénykülönbségEzzel a pixelrel összpontosítunk.
windowSize
int
A s x s ablak mérete a pixel körül összpontosított
BinarizeFixed(Byte)
Könnyedén binárisítse a képet egy előre meghatározott küszöbön, ezzelIntuitív módszer. ideális a fejlesztők, akik szeretnék átalakítani a képeket bináris formában,a további feldolgozás vagy elemzés céljából történő egyszerűsítése.
public override void BinarizeFixed(byte threshold)
Parameters
threshold
byte
Ha egy pixel megfelelő szürke értéke meghaladja a határértéket, a255 lesz odaítélve, 0 másként.
BinarizeOtsu()
Végezzen binarizációt a képen az Otsu határátkelővel ezzel az intuitív módszerrel.Ideális azoknak a fejlesztőknek, akik automatikusan meg akarják határozni az optimális küszöbötátalakítja a képeket bináris formába, javítva a tisztaságukat és a további elemzéshez való alkalmasságukat.
public override void BinarizeOtsu()
Crop(Rectangle)
Könnyedén termeszti a képet, hogy ezt az intuitív módszert a konkrét területekre összpontosítson.Ideális azoknak a fejlesztőknek, akik dinamikusan megpróbálják kifinomítani a képek összetételét.
public override void Crop(Rectangle rectangle)
Parameters
rectangle
Rectangle
A rektangulát.
Crop(int, int, int, int és int)
Növesse a képet, miközben átalakítja a változásokat szüntelenül ezzel az intuitív módszerrel.Ideális azoknak a fejlesztőknek, akik pontos ellenőrzést keresnek a termesztési folyamatrólAz Apng képek konkrét területeire összpontosítanak.
public override void Crop(int leftShift, int rightShift, int topShift, int bottomShift)
Parameters
leftShift
int
A baloldali változás.
rightShift
int
A helyes változás.
topShift
int
A legfelső változás.
bottomShift
int
Az alsó változás.
Dither(DitheringMethod, int, IColorPalette)
Könnyen alkalmazza a dimenzió hatásait a jelenlegi képre ezzel az intuitív módszerrel.Ideális azoknak a fejlesztőknek, akik textúrát szeretnének hozzáadni vagy csökkenteni a színes kötődéseket a képükben.
public override void Dither(DitheringMethod ditheringMethod, int bitsCount, IColorPalette customPalette)
Parameters
ditheringMethod
DitheringMethod
Az eltávolító módszer.
bitsCount
int
Az utolsó bitek számolnak a ditheringre.
customPalette
IColorPalette
A Dithering számára használt paletták.
Filter(Rectangle, FilterOptionsBázis)
Könnyedén alkalmazza a szűrőket a kép meghatározott rektangulájára ezzelIntuitív módszer. tökéletes a fejlesztők, akik szeretnék javítani vagy módosítani egy adott területen.
public override void Filter(Rectangle rectangle, FilterOptionsBase options)
Parameters
rectangle
Rectangle
A rektangulát.
options
FilterOptionsBase
Az opciók.
GetDefaultOptions(objektum[])
Javítsa az alapértelmezett opciókat keményen ezzel az egyszerű módszerrel.Ideális azoknak a fejlesztőknek, akik gyors hozzáférést keresnek az alapértelmezett Apng képbeállításokhoz.
public override ImageOptionsBase GetDefaultOptions(object[] args)
Parameters
args
object
[]
Az érvek.
Returns
Default opciók
GetModifyDate(Bóli)
Gyorsan megkapja a dátumot és az időt, amikor az erőforrás képet utoljára módosítottákEz a felhasználóbarát módszer. Ideális a fejlesztők számára, akiknek meg kell nyomon követniük a változásokatés hatékonyan kezeli az erőforrásokat.
public override DateTime GetModifyDate(bool useDefault)
Parameters
useDefault
bool
ha „igaz” beállítva használja a FileInfo-ból származó információt alapértelmezett értésként.
Returns
A dátum és az idő az erőforrás képet utoljára módosították.
GetOriginalOptions()
Az eredeti fájl beállításokon alapuló opciók visszanyerése keményen ezzel az intuitív módszerrel.Tökéletes azoknak a fejlesztőknek, akik hozzáférni és olyan beállításokat használnak, amelyek összhangban vannak a jellemzőkkelAz eredeti fájlból.Ez segíthet abban, hogy az eredeti kép bit mélysége és egyéb paraméterei változatlanok maradjanak.Például, ha egy fekete-fehér PNG képet 1 bit per pixelrel töltünk fel, majd aAspose.Imaging.DataStreamSupporter.Save(System.String) módszer, a kimeneti PNG kép 8 bit per pixel lesz előállítva.Ahhoz, hogy elkerüljék és mentse a PNG képet 1 bit per pixel, használja ezt a módszert, hogy megkapja a megfelelő mentési lehetőségeket, és adja át őketa Aspose.Imaging.Image.Save(System.String,_Wl17. ImageOptionsBase) módszer a második paraméter.
public override ImageOptionsBase GetOriginalOptions()
Returns
Az eredeti fájl beállításokon alapuló lehetőségek.
GetPagesAsEnumerable()
Az oldalak számolhatók.
protected override IEnumerable<image/> GetPagesAsEnumerable()
Returns
IEnumerable < Image >
A saját oldalak számolhatók.
Grayscale()
Könnyedén átalakítja a képet a szürke színű reprezentációjába ezzel az intuitív módszerrel.Ideális a színes képek átalakítására törekvő fejlesztők számára, egyszerűsítve avizualizációs vagy elemzési folyamatok.
public override void Grayscale()
InsertFrame(int)
Nehezen helyezzen be egy új keretet a keretek gyűjteményébe a megadottEzzel az intuitív módszerrel. ideális a fejlesztők számára, akik pontos ellenőrzést keresneka keretek elrendezése a többdimenziós képek animációjában.Új keretet hoz létre a jelenlegi kép méretének megfelelően.
public ApngFrame InsertFrame(int index)
Parameters
index
int
Ez az index.
Returns
Az újonnan létrehozott APNG keret.
Exceptions
index’ is less than 0.or
index’ is greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.
InsertFrame(Részletesebben RasterImage)
Helyezze be az új keretet a saját keretek gyűjteményébe a meghatározott indexben.Az új keret tartalma a megadott képből lesz kitöltve.
public void InsertFrame(int index, RasterImage frameImage)
Parameters
index
int
Ez az index.
frameImage
RasterImage
A keret kép.
Exceptions
index’ is less than 0.or
index’ is greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.
A frameImage nulla.
InsertFrame(Részletesebben RasterImage, Uint)
Helyezze be az új keretet a saját keretek gyűjteményébe a meghatározott indexben.Az új keret tartalma a megadott képből lesz kitöltve.
public void InsertFrame(int index, RasterImage frameImage, uint frameTime)
Parameters
index
int
Ez az index.
frameImage
RasterImage
A keret kép.
frameTime
uint
A keretrendszer időtartama millisekunderben.
Exceptions
index’ is less than 0.or
index’ is greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.
A frameImage nulla.
PopFrameAt(int)
Távolítsa el és visszavonja a keretet a meghatározott indexből a keretgyűjteménybőlEz az intuitív módszer. tökéletes a fejlesztők számára, akik hatékony menedzsmentet keresnekA rajzok az animációkban.
public ApngFrame PopFrameAt(int index)
Parameters
index
int
Ez az index.
Returns
Az eltávolított APNG keretrendszer.
Exceptions
index’ is less than 0.or
index’ is equal to or greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.
ReleaseManagedResources()
A kezelt erőforrások kibocsátása. Győződjön meg róla, hogy itt nem bocsátják ki a kezeletlen forrásokat, mivel azok lehetnekMár szabadon bocsátották.
protected override void ReleaseManagedResources()
RemoveAllFrames()
Tisztítsa meg a keretek gyűjteményét azáltal, hogy eltávolítja az összes keretet ezzel az intuitív módszerrel.Ideális azoknak a fejlesztőknek, akik újratelepíteni vagy frissíteni szeretnék animációikat.
public void RemoveAllFrames()
Examples
Az alábbi példa azt mutatja, hogyan kell létrehozni egy APNG képet egy másik raster egyoldalú kép.
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.FileFormats.Apng;
const int AnimationDuration = 1000; // 1 s
const int FrameDuration = 70; // 70 ms
using (RasterImage sourceImage = (RasterImage)Image.Load("not_animated.png"))
{
ApngOptions createOptions = new ApngOptions
{
Source = new FileCreateSource("raster_animation.png", false),
DefaultFrameTime = (uint)FrameDuration,
ColorType = PngColorType.TruecolorWithAlpha,
};
using (ApngImage apngImage = (ApngImage)Image.Create(
createOptions,
sourceImage.Width,
sourceImage.Height))
{
// It is possible to set image default frame time there: apngImage.DefaultFrameTime = (uint)FrameDuration;
int numOfFrames = AnimationDuration / FrameDuration;
int numOfFrames2 = numOfFrames / 2;
// Cleaning because the image contains one frame by default
apngImage.RemoveAllFrames();
// add first frame
apngImage.AddFrame(sourceImage);
// add intermediate frames
for (int frameIndex = 1; frameIndex < 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();
}
}
RemoveFrameAt(int)
Távolítsa el a meghatározott index keretét a keretgyűjteménybőlIdeális a fejlesztők számára, akik szigorúan kezelik a kereteketA többdimenziós képekben.A törlésre kerülő keret eltávolításra kerül.
public void RemoveFrameAt(int index)
Parameters
index
int
Ez az index.
Exceptions
index’ is less than 0.or
index’ is equal to or greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.
ResetDefaultImage()
Távolítsa el a korábban beállított alapértelmezett képet ezzel az intuitív módszerrel.Ideális azoknak a fejlesztőknek, akik szeretnék újra beállítani vagy törölni az alapértelmezett képet animációjukban.Ezt követően az alapértelmezett kép az első keret a saját keretgyűjteményben(Ezt a módszert nem lehet eltávolítani.)
public void ResetDefaultImage()
Resize(Az int, int, resizeType)
Ezzel az intuitív módszerrel átirányítsa a képet.Tökéletes a fejlesztők számáraa képek dimenzióinak dinamikusan történő beállítása érdekében.
public override void Resize(int newWidth, int newHeight, ResizeType resizeType)
Parameters
newWidth
int
Az új szélesség.
newHeight
int
Az új magasság.
resizeType
ResizeType
A visszavágó típus.
Resize(int, int, ImageResizeSettings)
visszaállítja a képet.
public override void Resize(int newWidth, int newHeight, ImageResizeSettings settings)
Parameters
newWidth
int
Az új szélesség.
newHeight
int
Az új magasság.
settings
ImageResizeSettings
A helyreállítási beállítások.
ResizeHeightProportionally(Részletesebben ResizeType)
Könnyedén beállítja a kép magasságát, miközben megtartja arányátEzzel az intuitív módszerrel. tökéletes a fejlesztők számára, akik képeket szeretnének átalakítanidinamikusan, miközben megőrzi az arányt.
public override void ResizeHeightProportionally(int newHeight, ResizeType resizeType)
Parameters
newHeight
int
Az új magasság.
resizeType
ResizeType
A visszahúzódás típusa.
ResizeWidthProportionally(Részletesebben ResizeType)
A kép szélességét ezzel az intuitív módszerrel viszonylag erőteljesen átalakítjuk.Ideális azoknak a fejlesztőknek, akik megpróbálják fenntartani a képek aspektus arányát, miközbenA dimenziók kiigazítása.
public override void ResizeWidthProportionally(int newWidth, ResizeType resizeType)
Parameters
newWidth
int
Az új szélesség.
resizeType
ResizeType
A visszahúzódás típusa.
Rotate(Float, Bool, Szín)
Kerülje a képet a központ körül erőteljesen ezzel az intuitív módszerrel.Ideális azoknak a fejlesztőknek, akik a képek orientációját dinamikusan szeretnék igazítani.
public override void Rotate(float angle, bool resizeProportionally, Color backgroundColor)
Parameters
angle
float
A fordulati szög fokban. pozitív értékek fordulnak órásan.
resizeProportionally
bool
ha a ‘igaz’ beállítva megváltozik a kép méretét a forgatott rektangul (szögpontok) projekciókkal összhangban, más esetekben, amelyek a dimenziókat érintetlenül hagyják, és csak belső kép tartalmát forgatták.
backgroundColor
Color
A háttér színe.
RotateFlip(RotateFlipType)
Könnyedén manipulálja az aktív keret a forgatás, flipping, vagy mindkettőEzzel az intuitív módszerrel. ideális a fejlesztők számára, akik személyre szabni szeretnékKép keretrendszer orientáció.
public override void RotateFlip(RotateFlipType rotateFlipType)
Parameters
rotateFlipType
RotateFlipType
A rotatott flip típus.
SaveData(Stream)
Megtakarítja az adatokat.
protected override void SaveData(Stream stream)
Parameters
stream
Stream
Az áram, hogy mentse az adatokat.
SetDefaultImage(RasterImage)
Állítsa be a kijelölt raster képet az aktuális animáció alapértelmezett képekéntkeményen ezzel a módszerrel. tökéletes a fejlesztők számára, akik személyre szabni szeretnékA képet az animációkban.
public void SetDefaultImage(RasterImage image)
Parameters
image
RasterImage
A képet.
Exceptions
A kép nulla.
UpdateDimensions(Az int, int)
A kép dimenzióinak frissítése.
protected override void UpdateDimensions(int newWidth, int newHeight)
Parameters
newWidth
int
Az új kép szélessége.
newHeight
int
Az új kép magassága.
UpdateMetadata()
A kép metadatainak frissítése.
protected override void UpdateMetadata()