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
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
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
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
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
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
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
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
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
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
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
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
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
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
Uudelleen luotu APNG-kehys.
Exceptions
index’ is less than 0.or
index’ 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
index’ is less than 0.or
index’ is greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.
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
index’ is less than 0.or
index’ is greater than Aspose.Imaging.FileFormats.Apng.ApngImage.PageCount.
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
Poistettu APNG kerma.
Exceptions
index’ is less than 0.or
index’ 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 < 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(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
index’ is less than 0.or
index’ 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
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()