Class WebPImage
De naam: Aspose.Imaging.FileFormats.Webp Verzameling: Aspose.Imaging.dll (25.4.0)
Manipuleer WebP raster beelden met onze API, met behulp van zijn moderne functies voor beideVerliesloos en verlieslos compressie, optimale beeldkwaliteit te garanderen met verminderde bestandsgrootte.Zorgvuldig beheren uitgebreide bestandsformaten, animaties en alfa-kanalen, terwijl gemakkelijkbijwerken van dimensies, proportioneel resiseren, graven, roteren, filters toepassen,het aanpassen van beeldparameters, en om te zetten naar andere beeldformaten voor versatileWeb beeldoptimalisatie.
[JsonObject(MemberSerialization.OptIn)]
public sealed class WebPImage : RasterCachedMultipageImage, IDisposable, IObjectWithBounds, IRasterImageArgb32PixelLoader, IRasterImageRawDataLoader, IHasXmpData, IHasMetadata, IMultipageImageExt, IMultipageImage
Inheritance
object ← DisposableObject ← DataStreamSupporter ← Image ← RasterImage ← RasterCachedImage ← RasterCachedMultipageImage ← WebPImage
Implements
IDisposable , IObjectWithBounds , IRasterImageArgb32PixelLoader , IRasterImageRawDataLoader , IHasXmpData , IHasMetadata , IMultipageImageExt , IMultipageImage
Geëerbiede leden
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
Dit voorbeeld laat zien hoe u een WebP-afbeelding van een bestand kunt uploaden en deze in PNG kunt opslaan.
string dir = "c:\\temp\\";
// Load a WebP image from a file.
using (Aspose.Imaging.FileFormats.Webp.WebPImage webPImage = new Aspose.Imaging.FileFormats.Webp.WebPImage(dir + "test.webp"))
{
// Save to PNG
// Note that only the active frame will be stored to PNG, since PNG is not a multi-page format.
webPImage.Save(dir + "test.output.png", new Aspose.Imaging.ImageOptions.PngOptions());
}
Constructors
WebPimage(Stream)
Instantiëren van een nieuwe instantie van de Aspose.Imaging.FileFormats.Webp. WebPImage klasse, geïnitieerdGebruik deze constructor om onmiddellijk WebP te makenbeeldobjecten rechtstreeks uit stromen, waardoor efficiënt beheer en manipulatie mogelijk isvan WebP-beeldgegevens binnen uw applicatie.
public WebPImage(Stream stream)
Parameters
stream
Stream
De stream WebP afbeelding.
Examples
Dit voorbeeld laat zien hoe u een WebP-afbeelding van een bestandstromen kunt uploaden en deze in PNG kunt opslaan.
string dir = "c:\\temp\\";
// Load a WebP image from a file stream.
using (System.IO.Stream stream = System.IO.File.OpenRead(dir + "test.webp"))
using (Aspose.Imaging.FileFormats.Webp.WebPImage webPImage = new Aspose.Imaging.FileFormats.Webp.WebPImage(stream))
{
// Save to PNG
// Note that only the active frame will be stored to PNG, since PNG is not a multi-page format.
webPImage.Save(dir + "test.output.png", new Aspose.Imaging.ImageOptions.PngOptions());
}
WebPimage(Stream, LoadOptions)
Creëer een nieuwe instantie van de Aspose.Imaging.FileFormats.Webp. WebPImage-klasse met behulp van een stroom enspecifieke ladingopties, waardoor het veelzijdige beheer van WebP-beeldgegevens wordt vergemakkelijkt.Incorporeren van deze constructor om WebP-beeldobjecten naadloos te initialiserenStreams terwijl u de ladingparameters aanpast zoals nodig is binnen uw applicatie.
public WebPImage(Stream stream, LoadOptions loadOptions)
Parameters
stream
Stream
De stream WebP afbeelding.
loadOptions
LoadOptions
De lading opties.
WebPimage(String)
Instantieer een nieuw voorbeeld van de Aspose.Imaging.FileFormats.Webp. WebPImage klasse, geïnitieerdGebruik deze constructor om onmiddellijk WebP te creërenbeeldobjecten rechtstreeks uit bestanden, het vergemakkelijken van het laadproces enhet manipuleren van WebP-beeldgegevens binnen uw applicatie.
public WebPImage(string path)
Parameters
path
string
De weg naar het bestanden WebP Image
Examples
Dit voorbeeld laat zien hoe u een WebP-afbeelding van een bestand kunt uploaden en deze in PNG kunt opslaan.
string dir = "c:\\temp\\";
// Load a WebP image from a file.
using (Aspose.Imaging.FileFormats.Webp.WebPImage webPImage = new Aspose.Imaging.FileFormats.Webp.WebPImage(dir + "test.webp"))
{
// Save to PNG
// Note that only the active frame will be stored to PNG, since PNG is not a multi-page format.
webPImage.Save(dir + "test.output.png", new Aspose.Imaging.ImageOptions.PngOptions());
}
WebPimage(String, LoadOptions)
Creëer een nieuwe instantie van de Aspose.Imaging.FileFormats.webp.WebPImage-klasse met behulp van een bestand engecertificeerde ladingopties, waardoor het flexibele beheer van WebP-beeldgegevens mogelijk is.deze constructor om WebP-beeldobjecten van bestanden onschuldig te initialiseren terwijlhet aanpassen van ladingparameters volgens de vereisten van uw applicatie.
public WebPImage(string path, LoadOptions loadOptions)
Parameters
path
string
De weg naar het bestanden WebP Image
loadOptions
LoadOptions
De lading opties.
WebPimage(RasterImage)
Instantiëren van een nieuwe instantie van de Aspose.Imaging.FileFormats.Webp. WebPImage klasse, geïnitieerdvan een geleverd rasterImage object. Deze constructor maakt het mogelijk om onbeleefdde conversie van rasterafbeeldingen naar WebP-formaat, waardoor efficiënte verwerking enmanipulatie van beeldgegevens binnen uw applicatie.
public WebPImage(RasterImage rasterImage)
Parameters
rasterImage
RasterImage
Het raster beeld.
Examples
Dit voorbeeld laat zien hoe u een WebP-afbeelding kunt maken van een andere raster-foto.
string dir = "c:\\temp\\";
// Load a PNG image of 100x100 px.
using (Aspose.Imaging.FileFormats.Png.PngImage pngImage = new Aspose.Imaging.FileFormats.Png.PngImage(100, 100))
{
Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(pngImage);
// Fill the entire image in red.
Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
graphics.FillRectangle(brush, pngImage.Bounds);
// Create a WebP image based on the PNG image.
using (Aspose.Imaging.FileFormats.Webp.WebPImage webPImage = new Aspose.Imaging.FileFormats.Webp.WebPImage(pngImage))
{
// Save to a WebP file with default options
webPImage.Save(dir + "output.webp", new Aspose.Imaging.ImageOptions.WebPOptions());
}
}
WebPimage(RasterImage en LoadOptions)
Creëer een nieuwe instantie van de Aspose.Imaging.FileFormats.Webp.webPimage klasse met behulp van een rasterImage object enspecifieke ladingopties, waarmee flexibele verwerking van afbeeldingsgegevens mogelijk is.Constructor om WebP-beeldobjecten van rasterfoto’s naadloos te initialiseren terwijlhet aanpassen van ladingparameters volgens de vereisten van uw applicatie.
public WebPImage(RasterImage rasterImage, LoadOptions loadOptions)
Parameters
rasterImage
RasterImage
Het raster beeld.
loadOptions
LoadOptions
De lading opties.
WebPimage(Int, Int en WebPOptions)
Instantiëren van een nieuwe instantie van de Aspose.Imaging.FileFormats.Webp. WebPImage klasse met een leegafbeelding van specifieke breedte en hoogtedimensies. deze constructor maakt het mogelijk om dehet creëren van witte WebP-afbeeldingen, een basis voor de volgende afbeeldingManipulatie en contentgeneratie binnen uw applicatie.
public WebPImage(int width, int height, WebPOptions options)
Parameters
width
int
De afbeelding breedte
height
int
De beeldhoogte.
options
WebPOptions
De opties .
Examples
Dit voorbeeld laat zien hoe u een WebP-afbeelding kunt maken met de aangegeven opties van scratch.
string dir = "c:\\temp\\";
Aspose.Imaging.ImageOptions.WebPOptions createOptions = new Aspose.Imaging.ImageOptions.WebPOptions();
createOptions.Lossless = true;
createOptions.Quality = 100f;
//createOptions.Source = new Aspose.Imaging.Sources.FileCreateSource(dir + "output.webp");
// Create a WebP image of 100x100 px.
using (Aspose.Imaging.FileFormats.Webp.WebPImage webPImage = new Aspose.Imaging.FileFormats.Webp.WebPImage(100, 100, createOptions))
{
Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(webPImage);
// Fill the entire image in red.
Aspose.Imaging.Brushes.SolidBrush brush = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
graphics.FillRectangle(brush, webPImage.Bounds);
// Save to a WebP file
webPImage.Save(dir + "output.webp");
}
Dit voorbeeld laat zien hoe u een multi-frame geanimeerde WebP-afbeelding kunt maken met de aangegeven opties.
string dir = "c:\\temp\\";
Aspose.Imaging.ImageOptions.WebPOptions createOptions = new Aspose.Imaging.ImageOptions.WebPOptions();
createOptions.Lossless = true;
createOptions.Quality = 100f;
createOptions.AnimBackgroundColor = (uint)Aspose.Imaging.Color.Gray.ToArgb();
// The default frame plus 36 + 36 additional frames.
createOptions.AnimLoopCount = 36 + 36 + 1;
// Create a WebP image of 100x100 px.
using (Aspose.Imaging.FileFormats.Webp.WebPImage webPImage = new Aspose.Imaging.FileFormats.Webp.WebPImage(100, 100, createOptions))
{
// The first circle is red
Aspose.Imaging.Brushes.SolidBrush brush1 = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
// The second circle is black
Aspose.Imaging.Brushes.SolidBrush brush2 = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Black);
// Gradually inscrease the angle of the red arc shape.
for (int angle = 10; angle <= 360; angle += 10)
{
Aspose.Imaging.FileFormats.Webp.WebPFrameBlock block = new Aspose.Imaging.FileFormats.Webp.WebPFrameBlock(100, 100);
Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(block);
graphics.FillPie(brush1, block.Bounds, 0, angle);
webPImage.AddBlock(block);
}
// Gradually inscrease the angle of the black arc and wipe out the red arc.
for (int angle = 10; angle <= 360; angle += 10)
{
Aspose.Imaging.FileFormats.Webp.WebPFrameBlock block = new Aspose.Imaging.FileFormats.Webp.WebPFrameBlock(100, 100);
Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(block);
graphics.FillPie(brush2, block.Bounds, 0, angle);
graphics.FillPie(brush1, block.Bounds, angle, 360 - angle);
webPImage.AddBlock(block);
}
// Save to a WebP file
webPImage.Save(dir + "output.webp");
}
WebPimage(Int, int, WebPOptions, LoadOptions)
Creëer een nieuwe instantie van de Aspose.Imaging.FileFormats.Webp. WebPImage klasse met een leeg beeld en aangegevenDeze constructor maakt de initialisering van WebP-afbeeldingen mogelijk metaanpassbare ladingparameters, die flexibiliteit bieden bij het maken van afbeeldingen enManipulatie binnen uw aanvraag.
public WebPImage(int width, int height, WebPOptions options, LoadOptions loadOptions)
Parameters
width
int
De afbeelding breedte
height
int
De beeldhoogte.
options
WebPOptions
De opties .
loadOptions
LoadOptions
De lading opties.
Properties
FileFormat
Toegang tot de waarde van het bestandformaat geassocieerd met de afbeelding, het verstrekken van informatieover het formaat waarin de afbeelding is opgeslagen. gebruik deze eigenschap om te bepalenhet bestandformaat van de afbeelding, het faciliteren van compatibiliteitschecks enFormat-specifieke verwerking binnen uw applicatie.
public override FileFormat FileFormat { get; }
Eigendomswaarde
HasAlpha
Controleer of de afbeelding een alfa-kanaal bevat, wat de aanwezigheid vantransparantie informatie. gebruik deze eigendom om te bepalen of de afbeeldinginclusief transparantie, waardoor de juiste behandeling en verwerking vanAlpha-gerelateerde operaties binnen uw applicatie.
public override bool HasAlpha { get; }
Eigendomswaarde
Examples
Het volgende voorbeeld laden een WEBP-afbeelding en drukken informatie over het grondgegevensformaat en de alfa-kanaal.
string dir = "c:\\temp\\";
string fileName = dir + "sample.webp";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(fileName))
{
Aspose.Imaging.FileFormats.Webp.WebPImage webpImage = (Aspose.Imaging.FileFormats.Webp.WebPImage)image;
// If the active TIFF frame has alpha channel, then the entire TIFF image is considered to have alpha channel.
System.Console.WriteLine("ImageFile={0}, FileFormat={1}, HasAlpha={2}", fileName, webpImage.RawDataFormat, webpImage.HasAlpha);
int i = 0;
foreach (Aspose.Imaging.FileFormats.Webp.IFrame frame in webpImage.Blocks)
{
Aspose.Imaging.FileFormats.Webp.WebPFrameBlock frameBlock = frame as Aspose.Imaging.FileFormats.Webp.WebPFrameBlock;
if (frameBlock != null)
{
System.Console.WriteLine("Frame={0}, FileFormat={1}, HasAlpha={2}", i++, frameBlock.RawDataFormat, frameBlock.HasAlpha);
}
}
}
// The output may look like this:
// ImageFile=c:\temp\sample.webp, FileFormat=RgbIndexed1Bpp, used channels: 1, HasAlpha=False
// Frame=0, FileFormat=RgbIndexed1Bpp, used channels: 1, HasAlpha=False
Options
herstellen of wijzigen van de opties die verband houden met de aangegeven eigendom, waardoorfijn aangepaste aanpassing van gedrag en instellingen. gebruik deze eigenschap omonbeperkte toegang en manipulatie van configurerbare parameters, het vergemakkelijken van versatiliteitcontrole en optimalisatie binnen de functionaliteit van uw applicatie.
[JsonProperty]
public WebPOptions Options { get; }
Eigendomswaarde
PageCount
Verwijder het totale aantal pagina’s binnen het aangegeven document, faciliterenefficiënte navigatie en het beheer van meerpagina-inhoud.functionaliteit om de gebruikerservaring te verbeteren, waardoor onmiddellijk toegang totuitgebreide documentstructuur.
public override int PageCount { get; }
Eigendomswaarde
Pages
Toegang tot de WebP-blocks binnen het beeld, waardoor gedetailleerde onderzoek ofmanipulatie van de onderliggende blokstructuur. gebruik deze eigenschap om te analyserenof wijzigen van individuele blokken binnen de WebP-beeldgegevens, waardoor geavanceerdebeeldverwerkingstechnieken binnen uw applicatie.
public override Image[] Pages { get; }
Eigendomswaarde
Image []
Methods
AddBlock(Iframe)
Een nieuwe WebP-blok in de afbeelding opnemen, de inhoud ervan verrijken envergemakkelijkt geavanceerde beeldmanipulatie. integreren van deze methode om dynamischverbetert de structuur en complexiteit van de WebP-beeldgegevens binnen uwtoepassing, waardoor nauwkeurige controle en optimalisatie van beeld rendering mogelijk is.
public void AddBlock(IFrame block)
Parameters
block
IFrame
De Webp blok om toe te voegen.
Examples
Dit voorbeeld laat zien hoe u een multi-frame geanimeerde WebP-afbeelding kunt maken met de aangegeven opties.
string dir = "c:\\temp\\";
Aspose.Imaging.ImageOptions.WebPOptions createOptions = new Aspose.Imaging.ImageOptions.WebPOptions();
createOptions.Lossless = true;
createOptions.Quality = 100f;
createOptions.AnimBackgroundColor = (uint)Aspose.Imaging.Color.Gray.ToArgb();
// The default frame plus 36 + 36 additional frames.
createOptions.AnimLoopCount = 36 + 36 + 1;
// Create a WebP image of 100x100 px.
using (Aspose.Imaging.FileFormats.Webp.WebPImage webPImage = new Aspose.Imaging.FileFormats.Webp.WebPImage(100, 100, createOptions))
{
// The first circle is red
Aspose.Imaging.Brushes.SolidBrush brush1 = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Red);
// The second circle is black
Aspose.Imaging.Brushes.SolidBrush brush2 = new Aspose.Imaging.Brushes.SolidBrush(Aspose.Imaging.Color.Black);
// Gradually inscrease the angle of the red arc shape.
for (int angle = 10; angle <= 360; angle += 10)
{
Aspose.Imaging.FileFormats.Webp.WebPFrameBlock block = new Aspose.Imaging.FileFormats.Webp.WebPFrameBlock(100, 100);
Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(block);
graphics.FillPie(brush1, block.Bounds, 0, angle);
webPImage.AddBlock(block);
}
// Gradually inscrease the angle of the black arc and wipe out the red arc.
for (int angle = 10; angle <= 360; angle += 10)
{
Aspose.Imaging.FileFormats.Webp.WebPFrameBlock block = new Aspose.Imaging.FileFormats.Webp.WebPFrameBlock(100, 100);
Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(block);
graphics.FillPie(brush2, block.Bounds, 0, angle);
graphics.FillPie(brush1, block.Bounds, angle, 360 - angle);
webPImage.AddBlock(block);
}
// Save to a WebP file
webPImage.Save(dir + "output.webp");
}
AddPage(RasterImage)
Voeg een nieuwe pagina toe aan de afbeelding, uitbreid zijn inhoud en accommodatie extravisuele elementen. integreren van deze methode om dynamische pagina-beheer te vergemakkelijkenbinnen uw applicatie, het mogelijk maken van onbeperkte creatie en verhoging van meerdere pagina’sdocumenten of beelden.
public void AddPage(RasterImage page)
Parameters
page
RasterImage
De pagina om toe te voegen.
Exceptions
page’ is null.
AdjustBrightness(Int)
Implementeren brightness’ aanpassing voor de afbeelding, waardoor themodification van de algemene luminance niveaus mogelijk is.Incorporeren van deze methode in uw beeldverwerkingswerkstroom om zichtbaarheid te verbeteren en de visuele kwaliteit van beelden binnen uw applicatie te verhogen.
public override void AdjustBrightness(int brightness)
Parameters
brightness
int
De briljante waarde.
AdjustContrast(Vloot)
Verbetert het contrast van de Aspose.Imaging.Image, versterkt deverschillen tussen licht en donkere gebieden. integreren van deze methode in uw beeldverwerkingswerkstroom om de visuele duidelijkheid en de algehele beeldkwaliteit binnen te verbeterenUw aanvraag .
public override void AdjustContrast(float contrast)
Parameters
contrast
float
Contrastwaarde (in bereik [-100; 100])
AdjustGamma(Vloot)
Gamma-correctie toepassen op de afbeelding, pixelintensiteiten aanpassen totde gewenste helderheid en kleurbalans.Integreer deze methode in uw beeldverwerking van de werkstromen om de visuele kwaliteit te verbeteren en de nauwkeurigheid vanlatere analyses of toont taken binnen uw aanvraag.
public override void AdjustGamma(float gamma)
Parameters
gamma
float
Gamma voor rode, groene en blauwe kanalen coëfficiënt
AdjustGamma(De vloot, de vloot, de vloot)
Gema-correctie uitvoeren op de afbeelding met behulp van individuele coëfficiënten voor de rode,groene en blauwe kanalen, waardoor fijne aanpassingen van kleurbalans enContrast. geïntegreer deze methode in uw beeldverwerkingssysteem om te bereikennauwkeurige controle over kleur rendering en verbeterde visuele betrouwbaarheid binnen uwAanvulling .
public override void AdjustGamma(float gammaRed, float gammaGreen, float gammaBlue)
Parameters
gammaRed
float
Gamma voor de rode kanaal coefficiënt
gammaGreen
float
Gamma voor groene kanaal coëfficiënt
gammaBlue
float
Gamma voor blauw kanaal coefficiënt
BinarizeBradley(Twee keer, int)
Binarisatie toepassen op de afbeelding met behulp van Bradley’s adaptieve thresholding algoritmemet integrale beeldgrenzen. deze methode dynamisch berekent lokaalgrenswaarden gebaseerd op de nabijheid van de afbeelding, die de aanpassingsvermogen verbetert tot variatieverlichtingsomstandigheden en een stevige segmentatie te garanderen voor latere verwerkingtaken binnen uw aanvraag.
public override void BinarizeBradley(double brightnessDifference, int windowSize)
Parameters
brightnessDifference
double
Het lichtverschil tussen de pixel en het gemiddelde van een s x s venster van pixelsHet gaat om deze pixel.
windowSize
int
De grootte van de s x s venster van pixels centraal rond deze pixel
BinarizeFixed(byte)
Doen binarisatie op het beeld met behulp van een vooraf gedefinieerde grenswaarde, om te zettenhet in een binaire afbeelding waar pixels worden geclassificeerd als voorgrond of achtergrondop basis van hun intensiteit ten opzichte van de drempel. integreren deze methode inuw beeldverwerking werkstromen te vergemakkelijken segmentatie en functie extractiede taken, de nauwkeurigheid en efficiëntie van de latere analyse binnen uwAanvulling .
public override void BinarizeFixed(byte threshold)
Parameters
threshold
byte
als de overeenkomstige grijze waarde van een pixel groter is dan de grenswaarde, een255 wordt daartoe toegewezen, 0 anders.
BinarizeOtsu()
Binarisatie uitvoeren op het beeld met behulp van Otsu’s thresholding methode, automatischhet bepalen van de optimale grenswaarde op basis van het histogram.deze methode in uw beeldverwerkingswerkstroom om effectieve segmentatie te bereikenen functie extractie, het verbeteren van de nauwkeurigheid en betrouwbaarheid van beeldanalysetaken binnen uw aanvraag.
public override void BinarizeOtsu()
ClearBlocks()
Verwijder alle bestaande WebP-blocks van de afbeelding, waardoor een schoon schijf voorlatere wijzigingen of toevoegingen. gebruik deze methode om effectief te herstellende blokstructuur binnen de WebP-beeldgegevens, het optimale beheer enOrganisatie van beeldinhoud binnen uw applicatie.
public void ClearBlocks()
Crop(Rectangle)
Groeien de afbeelding met behulp van een bepaald rectangle gebied, het verwijderen van ongewenste portiesbij het behoud van de gewenste inhoud. integreren deze methode in uw afbeeldingverwerkingswerkstroom om nauwkeurig te extraheren en zich te richten op specifieke gebieden van belangbinnen de afbeelding, het verbeteren van duidelijkheid en samenstelling voor verschillende toepassingen.
public override void Crop(Rectangle rectangle)
Parameters
rectangle
Rectangle
De rechthoek.
Crop(int, int, int, int, int)
Groeien de afbeelding door linker, rechter, bovenste en onderste schakels effectief toe te passenhet selecteren van een gebied van belang binnen de afbeelding. gebruik deze methode omDynamisch extraheren gewenste porties van het beeld terwijl het aanpassen van de samenstellingen focussen volgens de eisen van uw aanvraag.
public override void Crop(int leftShift, int rightShift, int topShift, int bottomShift)
Parameters
leftShift
int
De linker verandert.
rightShift
int
De juiste wisseling.
topShift
int
De top shift.
bottomShift
int
De bodem verandert.
Dither(DitheringMethod, int, IColorPalette)
Het uitvoeren van de dithering op de huidige afbeelding om de kleurbanding te verminderen en het visuele beeld te verbeterenintegreren van deze methode in uw beeldverwerking workflow om te bereikengladere overgangen tussen kleuren en het algemene uiterlijk van deAfbeelding binnen uw aanvraag.
public override void Dither(DitheringMethod ditheringMethod, int bitsCount, IColorPalette customPalette)
Parameters
ditheringMethod
DitheringMethod
De Dithering Methode.
bitsCount
int
De laatste bits tellen voor dithering.
customPalette
IColorPalette
De gewone palet voor dithering.
Filter(Rectangle, FilterOptionsBase)
Filteren van de inhoud binnen de aangegeven rectangle, het toepassen van een aangewezen afbeeldingverwerkingsfilter om de geselecteerde regio te verbeteren of te wijzigen.in uw beeldmanipulatie werkstromen om gerichte verbeteringen te bereiken ofTransformaties binnen uw applicatie.
public override void Filter(Rectangle rectangle, FilterOptionsBase options)
Parameters
rectangle
Rectangle
De rechthoek.
options
FilterOptionsBase
De opties .
Examples
Het volgende voorbeeld geldt voor verschillende soorten filters voor een WEBP-afbeelding.
string dir = "c:\\temp\\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.webp"))
{
Aspose.Imaging.FileFormats.Webp.WebPImage webpImage = (Aspose.Imaging.FileFormats.Webp.WebPImage)image;
// Apply a median filter with a rectangle size of 5 to the entire image.
webpImage.Filter(webpImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.MedianFilterOptions(5));
webpImage.Save(dir + "sample.MedianFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
}
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.webp"))
{
Aspose.Imaging.FileFormats.Webp.WebPImage webpImage = (Aspose.Imaging.FileFormats.Webp.WebPImage)image;
// Apply a bilateral smoothing filter with a kernel size of 5 to the entire image.
webpImage.Filter(webpImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.BilateralSmoothingFilterOptions(5));
webpImage.Save(dir + "sample.BilateralSmoothingFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
}
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.webp"))
{
Aspose.Imaging.FileFormats.Webp.WebPImage webpImage = (Aspose.Imaging.FileFormats.Webp.WebPImage)image;
// Apply a Gaussian blur filter with a radius of 5 and a sigma value of 4.0 to the entire image.
webpImage.Filter(webpImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.GaussianBlurFilterOptions(5, 4.0));
webpImage.Save(dir + "sample.GaussianBlurFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
}
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.webp"))
{
Aspose.Imaging.FileFormats.Webp.WebPImage webpImage = (Aspose.Imaging.FileFormats.Webp.WebPImage)image;
// Apply a Gauss-Wiener filter with a radius of 5 and a smooth value of 4.0 to the entire image.
webpImage.Filter(webpImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.GaussWienerFilterOptions(5, 4.0));
webpImage.Save(dir + "sample.GaussWienerFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
}
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.webp"))
{
Aspose.Imaging.FileFormats.Webp.WebPImage webpImage = (Aspose.Imaging.FileFormats.Webp.WebPImage)image;
// Apply a motion wiener filter with a length of 5, a smooth value of 4.0 and an angle of 90.0 degrees to the entire image.
webpImage.Filter(webpImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.MotionWienerFilterOptions(10, 1.0, 90.0));
webpImage.Save(dir + "sample.MotionWienerFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
}
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.webp"))
{
Aspose.Imaging.FileFormats.Webp.WebPImage webpImage = (Aspose.Imaging.FileFormats.Webp.WebPImage)image;
// Apply a sharpen filter with a kernel size of 5 and a sigma value of 4.0 to the entire image.
webpImage.Filter(webpImage.Bounds, new Aspose.Imaging.ImageFilters.FilterOptions.SharpenFilterOptions(5, 4.0));
webpImage.Save(dir + "sample.SharpenFilter.png", new Aspose.Imaging.ImageOptions.PngOptions());
}
Grayscale()
Converteer het beeld naar zijn grayscale vertegenwoordiging, waardoor het in eenEen-kanaal beeld waar elk pixel de intensiteit of de luminositeit vertegenwoordigt.deze methode in uw beeldverwerking pipeline om de analyse te vereenvoudigen en te verbeterencompatibiliteit met grayscale-gebaseerde algoritmen, het vergemakkelijken van verschillende computersvisuele en beeldanalyse taken binnen uw applicatie.
public override void Grayscale()
InsertBlock(De Iframe)
Een nieuw WebP-blok invoeren op de aangegeven index binnen de afbeelding, waardoor nauwkeurigheid mogelijk is.control over de bloksequentie. integreren van deze methode om naadloos te incorporerenaanvullende WebP-blokken in de beeldgegevensstructuur, waardoor geavanceerde afbeeldingen worden vergemakkelijktVerwerking en optimalisatie binnen uw applicatie.
public void InsertBlock(int index, IFrame block)
Parameters
index
int
Het nulgebaseerde element, waarop block’ wordt opgenomen.
block
IFrame
De Webp blok om toe te voegen.
ReleaseManagedResources()
Zorg ervoor dat geen onbeheerde middelen hier worden vrijgegeven, omdat ze mogelijkal vrijgelaten.
protected override void ReleaseManagedResources()
RemoveBlock(Iframe)
Verwijder het specifieke WebP-blok van de afbeelding, waardoor efficiënt beheer mogelijk isGebruik deze methode om de beeldverwerking te vergemakkelijkenwerkstromen door onnodige blokken of componenten binnen uw applicatie te elimineren.
public void RemoveBlock(IFrame block)
Parameters
block
IFrame
De blok om te verwijderen.
Remarks
Opmerking: vergeet niet om het block’ te plaatsen als u het niet wilt toevoegen aan een andere WebPImage.
Resize(int, int, resizeType)
Herstellen van het beeld, aanpassen van de afmetingen terwijl het aspectpercentage wordt bewaard.Integreren van deze methode in uw beeldverwerkingswerkstroom om dynamisch te scalenbeelden om verschillende display- of opslagvereisten binnen uw applicatie aan te passen.
public override void Resize(int newWidth, int newHeight, ResizeType resizeType)
Parameters
newWidth
int
De nieuwe breedte.
newHeight
int
De nieuwe hoogte.
resizeType
ResizeType
De resize type.
Examples
Dit voorbeeld loopt een WEBP-afbeelding en resecteert het met behulp van verschillende resisatiemethoden.
string dir = "c:\\temp\\";
using (Aspose.Imaging.FileFormats.Webp.WebPImage image = (Aspose.Imaging.FileFormats.Webp.WebPImage)Aspose.Imaging.Image.Load(dir + "sample.webp"))
{
// Scale up by 2 times using Nearest Neighbour resampling.
image.Resize(image.Width* 2, image.Height* 2, Aspose.Imaging.ResizeType.NearestNeighbourResample);
// Save to PNG with default options.
image.Save(dir + "upsample.nearestneighbour.png", new Aspose.Imaging.ImageOptions.PngOptions());
}
using (Aspose.Imaging.FileFormats.Webp.WebPImage image = (Aspose.Imaging.FileFormats.Webp.WebPImage)Aspose.Imaging.Image.Load(dir + "sample.webp"))
{
// Scale down by 2 times using Nearest Neighbour resampling.
image.Resize(image.Width / 2, image.Height / 2, Aspose.Imaging.ResizeType.NearestNeighbourResample);
// Save to PNG with default options.
image.Save(dir + "downsample.nearestneighbour.png", new Aspose.Imaging.ImageOptions.PngOptions());
}
using (Aspose.Imaging.FileFormats.Webp.WebPImage image = (Aspose.Imaging.FileFormats.Webp.WebPImage)Aspose.Imaging.Image.Load(dir + "sample.webp"))
{
// Scale up by 2 times using Bilinear resampling.
image.Resize(image.Width* 2, image.Height* 2, Aspose.Imaging.ResizeType.BilinearResample);
// Save to PNG with default options.
image.Save(dir + "upsample.bilinear.png", new Aspose.Imaging.ImageOptions.PngOptions());
}
using (Aspose.Imaging.FileFormats.Webp.WebPImage image = (Aspose.Imaging.FileFormats.Webp.WebPImage)Aspose.Imaging.Image.Load(dir + "sample.webp"))
{
// Scale down by 2 times using Bilinear resampling.
image.Resize(image.Width / 2, image.Height / 2, Aspose.Imaging.ResizeType.BilinearResample);
// Save to PNG with default options.
image.Save(dir + "downsample.bilinear.png", new Aspose.Imaging.ImageOptions.PngOptions());
}
Resize(int, int, ImageResizeSettings)
Reset de afbeelding volgens de aangegeven instellingen, waardoor nauwkeurige controle overdimensies, aspect ratio, en scaling gedrag. integreren deze methode in uwbewerkingswerkstroom voor het bereiken van aangepaste recycling-operaties die zijn afgestemd opde specifieke vereisten van uw aanvraag.
public override void Resize(int newWidth, int newHeight, ImageResizeSettings settings)
Parameters
newWidth
int
De nieuwe breedte.
newHeight
int
De nieuwe hoogte.
settings
ImageResizeSettings
De resize instellingen.
ResizeHeightProportionally(Int, ResizeType)
De hoogte van de afbeelding proportioneel aanpassen, terwijl het aspectverhouding behouden wordtintegreren van deze methode in uw beeldverwerking workflowom dynamisch afbeeldingen met eenvormige proporties te resimeren, optimale weergave te garanderen ofopslaan binnen uw aanvraag.
public override void ResizeHeightProportionally(int newHeight, ResizeType resizeType)
Parameters
newHeight
int
De nieuwe hoogte.
resizeType
ResizeType
Type van de resize.
ResizeWidthProportionally(Int, ResizeType)
Proportioneel aanpassen van de breedte van het beeld terwijl het aspectverhouding behouden.Integreren van deze methode in uw beeldverwerkingswerkstroom om dynamisch te resimerenafbeeldingen met consistente proporties, zorgen voor een optimale weergave of opslag binnenUw aanvraag .
public override void ResizeWidthProportionally(int newWidth, ResizeType resizeType)
Parameters
newWidth
int
De nieuwe breedte.
resizeType
ResizeType
Type van de resize.
Rotate(Float, bool, kleur)
Root de afbeelding rond zijn centrum met een bepaald hoek, terwijl proportioneelherstellen en specifieke achtergrondkleurparameters toe te passen.methode in uw beeldverwerking workflow om nauwkeurige transformaties te bereiken metaangepaste achtergrondkleuren, optimale visuele presentatie binnen uwAanvulling .
public override void Rotate(float angle, bool resizeProportionally, Color backgroundColor)
Parameters
angle
float
De rotatie van de hoek in graden. positieve waarden zullen rotatie horloge.
resizeProportionally
bool
als je ’true’ hebt ingesteld, zal je afbeeldingsgrootte worden gewijzigd, afhankelijk van rotatie rectangle (kornpunten) projecties in andere gevallen die de dimensies niet aanraken en alleen interne beeldinhoud wordt roterd.
backgroundColor
Color
De kleur van de achtergrond.
RotateFlip(RotateFlipType)
Gebruik rotatie, flipping of beide operaties uitsluitend op het actieve kader.geïntegreer deze methode in uw beeldverwerking workflowde nauwkeurige manipulatie van individuele kaders, het verbeteren van de flexibiliteit encontrole over frame transformaties binnen uw applicatie.
public override void RotateFlip(RotateFlipType rotateFlipType)
Parameters
rotateFlipType
RotateFlipType
De rotated flip type.
SaveData(Stream)
Bespaar de gegevens.
protected override void SaveData(Stream stream)
Parameters
stream
Stream
De stroom om gegevens op te slaan.
UpdateDimensions(int, int)
Update de afbeeldingsdimensies.
protected override void UpdateDimensions(int newWidth, int newHeight)
Parameters
newWidth
int
De nieuwe beeldbreedte.
newHeight
int
De nieuwe beeldhoogte.