Class WebPImage
Nama dari : Aspose.Imaging.FileFormats.Webp Pengumpulan: Aspose.Imaging.dll (25.4.0)
Memanipulasi WebP raster gambar dengan API kami, menggunakan fitur modern untuk keduanyaKompresi tanpa kerugian dan kerugian, memastikan kualitas gambar yang optimal dengan ukuran file yang dikurangi.Dengan mudah mengendalikan format file yang diperpanjang, animasi, dan saluran alfa, sementara dengan mudahmemperbarui dimensi, resizing proporsional, menggali, berputar, menerapkan filter,menyesuaikan parameter gambar, dan konversi ke format gambar lainnya untuk versatileWeb image optimisasi.
[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
anggota yang diwarisi
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
Contoh ini menunjukkan cara memuat gambar WebP dari file dan menyimpannya ke PNG.
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)
Instantiate sebuah contoh baru dari Aspose.Imaging.FileFormats.Webp.WebPImage kelas, dimulaidari sumber streaming yang disediakan. Gunakan konstrutor ini untuk membuat WebP dengan mudahobjek gambar langsung dari arus, memungkinkan pengendalian dan manipulasi yang efisienData gambar WebP di dalam aplikasi Anda.
public WebPImage(Stream stream)
Parameters
stream
Stream
Gambar dari WebP.
Examples
Contoh ini menunjukkan cara memuat gambar WebP dari arus file dan menyimpannya ke PNG.
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(Perbedaan, LoadOptions)
Buat contoh baru dari kelas Aspose.Imaging.FileFormats.Webp.WebPImage menggunakan aliran danopsi beban yang ditentukan, memfasilitasi pengendalian beragam data gambar WebP.Mengintegrasikan konstruktor ini untuk secara tidak sengaja memulai objek gambar WebP darimengalir sambil menyesuaikan parameter muatan seperti yang diperlukan dalam aplikasi Anda.
public WebPImage(Stream stream, LoadOptions loadOptions)
Parameters
stream
Stream
Gambar dari WebP.
loadOptions
LoadOptions
dengan opsi beban.
WebPimage(String)
Instantiate sebuah contoh baru dari Aspose.Imaging.FileFormats.Webp.WebPImage kelas, dimulaidari sumber file yang disediakan. Gunakan konstruktor ini untuk membuat WebP dengan mudahobjek gambar langsung dari file, mempercepat proses muat danmemanipulasi data gambar WebP di dalam aplikasi Anda.
public WebPImage(string path)
Parameters
path
string
Cara Mengakses WebP Image
Examples
Contoh ini menunjukkan cara memuat gambar WebP dari file dan menyimpannya ke PNG.
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 dan LoadOptions)
Buat contoh baru dari kelas Aspose.Imaging.FileFormats.Webp.WebPImage menggunakan file danopsi beban yang ditentukan, memfasilitasi pengendalian data gambar WebP yang fleksibel.Konstruktor ini secara tidak sengaja memulai objek gambar WebP dari file sementaramenyesuaikan parameter muatan sesuai dengan kebutuhan aplikasi Anda.
public WebPImage(string path, LoadOptions loadOptions)
Parameters
path
string
Cara Mengakses WebP Image
loadOptions
LoadOptions
dengan opsi beban.
WebPimage(RasterImage)
Instantiate sebuah contoh baru dari Aspose.Imaging.FileFormats.Webp.WebPImage kelas, dimulaidari objek yang disediakan rasterImage. konstruktor ini memungkinkan untukKonversi gambar raster ke format WebP, memungkinkan pengendalian yang efisien danmanipulasi data gambar dalam aplikasi Anda.
public WebPImage(RasterImage rasterImage)
Parameters
rasterImage
RasterImage
Gambar dari raster.
Examples
Contoh ini menunjukkan cara membuat gambar WebP dari gambar raster lain.
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 dan LoadOptions)
Buat contoh baru dari kelas Aspose.Imaging.FileFormats.Webp.WebPImage menggunakan objek rasterImage danopsi beban yang ditentukan, memungkinkan pengendalian data gambar yang fleksibel.Konstruktor untuk secara tidak sengaja memulai objek gambar WebP dari gambar raster sementaramenyesuaikan parameter muatan sesuai dengan kebutuhan aplikasi Anda.
public WebPImage(RasterImage rasterImage, LoadOptions loadOptions)
Parameters
rasterImage
RasterImage
Gambar dari raster.
loadOptions
LoadOptions
dengan opsi beban.
WebPimage(int, int, dan WebPOptions)
Instanti sebuah contoh baru dari Aspose.Imaging.FileFormats.Webp.WebPImage kelas dengan kosonggambar dari ukuran lebar dan ketinggian yang ditentukan. konstruktor ini memungkinkan untukpenciptaan gambar WebP putih, memberikan dasar untuk gambar berikutnyamanipulasi dan produksi konten dalam aplikasi Anda.
public WebPImage(int width, int height, WebPOptions options)
Parameters
width
int
Gambar lebar
height
int
Ukuran gambar tinggi.
options
WebPOptions
dengan opsi tersebut.
Examples
Contoh ini menunjukkan cara membuat gambar WebP dengan opsi yang ditentukan dari 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");
}
Contoh ini menunjukkan cara membuat gambar animasi WebP multi-frame dengan opsi yang ditentukan.
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)
Buat contoh baru dari Aspose.Imaging.FileFormats.Webp.WebPimage kelas dengan gambar kosong dan ditentukanopsi muatan. konstruktor ini memungkinkan untuk inisialisasi gambar WebP denganparameter pengisian yang dapat disesuaikan, memberikan fleksibilitas dalam pembuatan gambar danmanipulasi dalam aplikasi Anda.
public WebPImage(int width, int height, WebPOptions options, LoadOptions loadOptions)
Parameters
width
int
Gambar lebar
height
int
Ukuran gambar tinggi.
options
WebPOptions
dengan opsi tersebut.
loadOptions
LoadOptions
dengan opsi beban.
Properties
FileFormat
Mengakses nilai format file yang terkait dengan gambar, memberikan informasitentang format di mana gambar disimpan. Gunakan properti ini untuk menentukanformat file dari gambar, memfasilitasi pemeriksaan kompatibilitas danPemrosesan spesifik format dalam aplikasi Anda.
public override FileFormat FileFormat { get; }
Nilai Properti
HasAlpha
Memeriksa apakah gambar itu mengandung saluran alfa, menunjukkan kehadiraninformasi transparansi. gunakan properti ini untuk menentukan apakah gambarmencakup transparansi, memungkinkan pengendalian dan pemrosesan yang tepat dariOperasi yang berkaitan dengan alfa di dalam aplikasi Anda.
public override bool HasAlpha { get; }
Nilai Properti
Examples
Contoh berikut memuat gambar WEBP dan mencetak informasi tentang format data mentah dan saluran alfa.
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
Mengembalikan atau mengubah opsi yang terkait dengan properti yang ditentukan, memungkinkanCara menyesuaikan perilaku dan pengaturan. gunakan properti ini untukmengakses dan memanipulasi parameter yang dapat dikonfigurasi, memfasilitasiKontrol dan optimasi dalam fungsi aplikasi Anda.
[JsonProperty]
public WebPOptions Options { get; }
Nilai Properti
PageCount
Mengembalikan jumlah halaman dalam dokumen yang ditentukan, memfasilitasinavigasi yang efisien dan pengelolaan konten multi-halaman.Fungsi untuk meningkatkan pengalaman pengguna, memungkinkan akses tanpa batas kestruktur dokumen yang komprehensif.
public override int PageCount { get; }
Nilai Properti
Pages
Akses ke blok WebP di dalam gambar, memungkinkan pemeriksaan rinci ataumanipulasi struktur blok dasar. Gunakan sifat ini untuk menganalisisatau mengubah blok individu dalam data gambar WebP, memfasilitasiTeknik pemrosesan gambar dalam aplikasi Anda.
public override Image[] Pages { get; }
Nilai Properti
Image [ ]
Methods
AddBlock(Iframa)
Mengintegrasikan blok WebP baru ke dalam gambar, memperkaya konten danmemfasilitasi manipulasi gambar lanjutan. mengintegrasikan metode ini untukmeningkatkan struktur dan kompleksitas data gambar WebP di dalamaplikasi, memungkinkan kontrol yang akurat dan pengoptimuman rendering gambar.
public void AddBlock(IFrame block)
Parameters
block
IFrame
Blok Webp untuk ditambahkan.
Examples
Contoh ini menunjukkan cara membuat gambar animasi WebP multi-frame dengan opsi yang ditentukan.
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)
Tambahkan halaman baru ke gambar, memperluas kontennya dan menampung tambahanMengintegrasikan metode ini untuk memfasilitasi manajemen halaman yang dinamisdi dalam aplikasi Anda, memungkinkan penciptaan dan peningkatan multi-pagedokumen atau gambar.
public void AddPage(RasterImage page)
Parameters
page
RasterImage
Halaman yang harus ditambahkan.
Exceptions
page’ is null.
AdjustBrightness(int)
Mengimplementasikan brightness’ penyesuaian untuk gambar, memungkinkan themodifikasi tingkat luminan keseluruhan. memasukkan metode ini ke dalam aliran kerja pemrosesan gambar Anda untuk meningkatkan visibilitas dan meningkatkan kualitas visual gambar dalam aplikasi Anda.
public override void AdjustBrightness(int brightness)
Parameters
brightness
int
Nilai kecerahan
AdjustContrast(kapal)
Meningkatkan kontras Aspose.Imaging.Image, memperkuatperbedaan antara cahaya dan gelap. mengintegrasikan metode ini ke dalam gambar Andaproses aliran kerja untuk meningkatkan kejelasan visual dan kualitas gambar secara keseluruhan di dalampermohonan Anda.
public override void AdjustContrast(float contrast)
Parameters
contrast
float
Nilai kontras (dalam rentang [-100; 100])
AdjustGamma(kapal)
Gunakan koreksi gamma pada gambar, menyesuaikan intensitas piksel untuk mencapaikecerahan dan keseimbangan warna yang diinginkan. memasukkan metode ini ke dalam gambar Andaproses aliran kerja untuk meningkatkan kualitas visual dan meningkatkan ketepatankemudian menganalisis atau menampilkan tugas dalam aplikasi Anda.
public override void AdjustGamma(float gamma)
Parameters
gamma
float
Gamma untuk koordinat saluran merah, hijau dan biru
AdjustGamma(Kapal, Kapal dan Kapal)
Melakukan koreksi gamma pada gambar menggunakan koefisien individu untuk merah,hijau, dan saluran biru, memungkinkan penyesuaian warna yang halus danMengintegrasikan metode ini ke dalam pipa pemrosesan gambar Anda untuk mencapaikontrol warna yang akurat dan meningkatkan kesetiaan visual di dalamuntuk aplikasi.
public override void AdjustGamma(float gammaRed, float gammaGreen, float gammaBlue)
Parameters
gammaRed
float
Gamma untuk Red Channel Coefficient
gammaGreen
float
Gamma untuk Green Channel Coefficient
gammaBlue
float
Gamma untuk Blue Channel Coefficient
BinarizeBradley(Dua kali, int)
Mengaplikasikan binarisasi pada gambar menggunakan algoritma sempadan adaptif BradleyMetode ini secara dinamis menghitung lokalbatas-batas berdasarkan tetangga gambar, meningkatkan adaptabilitas untuk variasikondisi pencahayaan dan memastikan segmen yang kuat untuk pemrosesan berikutnyaTugas dalam aplikasi Anda.
public override void BinarizeBradley(double brightnessDifference, int windowSize)
Parameters
brightnessDifference
double
Perbedaan kecerahan antara piksel dan rata-rata jendela piksel s x sFokus di sekitar piksel ini.
windowSize
int
Ukuran jendela s x s dari piksel yang berpusat di sekitar piksel ini
BinarizeFixed(byte)
Melakukan binarisasi pada gambar menggunakan nilai ambang yang sudah ditentukan,itu ke dalam gambar biner di mana piksel diklasifikasikan sebagai depan atau latar belakangberdasarkan intensitas mereka relatif ke ambang. mengintegrasikan metode ini ke dalamaliran kerja pemrosesan gambar Anda untuk memfasilitasi segmen dan ekstraksi fiturtugas, meningkatkan ketepatan dan efisiensi analisis berikutnya di dalamuntuk aplikasi.
public override void BinarizeFixed(byte threshold)
Parameters
threshold
byte
Jika nilai kelabu yang sepadan dari piksel lebih besar dari batas, nilai255 akan diberikan kepadanya, 0 sebaliknya.
BinarizeOtsu()
Melakukan binarisasi pada gambar menggunakan metode sempadan Otsu, secara otomatismenentukan nilai ambang optimal berdasarkan histogram gambar.Metode ini masuk ke aliran kerja pemrosesan gambar Anda untuk mencapai segmensi yang efektifdan fitur ekstraksi, meningkatkan ketepatan dan kebolehpercayaan analisis gambarTugas dalam aplikasi Anda.
public override void BinarizeOtsu()
ClearBlocks()
Temukan semua blok WebP yang ada dari gambar, memfasilitasi slate yang bersih untukmodifikasi atau penambahan berikutnya.Menggunakan metode ini untuk mengatur ulang secara efektifstruktur blok dalam data gambar WebP, memastikan manajemen optimal danOrganisasi konten gambar di dalam aplikasi Anda.
public void ClearBlocks()
Crop(Rectangle)
Menanam gambar menggunakan daerah rektangle yang ditentukan, menghapus porsi yang tidak diinginkansambil mempertahankan konten yang diinginkan. mengintegrasikan metode ini ke dalam gambar Andaproses aliran kerja untuk mengekstrak dengan tepat dan fokus pada area kepentingan tertentudalam gambar, meningkatkan kejelasan dan komposisi untuk berbagai aplikasi.
public override void Crop(Rectangle rectangle)
Parameters
rectangle
Rectangle
dengan rektangle.
Crop(int, int, int, int dan int)
Menanam gambar dengan menerapkan pergeseran kiri, kanan, atas, dan bawah, secara efektifmemilih area minat dalam gambar.Menggunakan metode ini untuksecara dinamis mengekstrak bagian yang diinginkan dari gambar sambil menyesuaikan komposisinyadan fokus sesuai dengan kebutuhan aplikasi Anda.
public override void Crop(int leftShift, int rightShift, int topShift, int bottomShift)
Parameters
leftShift
int
Pindah ke kiri.
rightShift
int
pergantian yang benar.
topShift
int
Pertukaran tertinggi.
bottomShift
int
Pertukaran bagian bawah.
Dither(DitheringMetode, int, IColorPalette)
Melakukan menghitung pada gambar saat ini untuk mengurangi banding warna dan meningkatkan visualMengintegrasikan metode ini ke dalam aliran kerja pemrosesan gambar Anda untuk mencapaiperalihan yang lebih halus antara warna dan meningkatkan penampilan keseluruhanGambar dalam aplikasi Anda.
public override void Dither(DitheringMethod ditheringMethod, int bitsCount, IColorPalette customPalette)
Parameters
ditheringMethod
DitheringMethod
Metode yang dihitung.
bitsCount
int
Bits terakhir menghitung untuk dikhitung.
customPalette
IColorPalette
Pakaian yang disesuaikan untuk dikeringkan.
Filter(Rectangle, FilterOptionsBase)
Filter konten di dalam rektangle yang ditentukan, menerapkan gambar yang ditentukanfilter pemrosesan untuk memperbaiki atau mengubah wilayah yang dipilih.ke dalam aliran kerja manipulasi gambar Anda untuk mencapai peningkatan yang ditargetkan atautransformasi dalam aplikasi Anda.
public override void Filter(Rectangle rectangle, FilterOptionsBase options)
Parameters
rectangle
Rectangle
dengan rektangle.
options
FilterOptionsBase
dengan opsi tersebut.
Examples
Contoh berikut menggunakan berbagai jenis filter untuk gambar WEBP.
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()
Mengubah gambar menjadi representasi grayscale, mengubahnya menjadiGambar satu saluran di mana setiap piksel mewakili intensitas atau luminan.metode ini ke dalam pipa pemrosesan gambar Anda untuk memudahkan analisis dan meningkatkankompatibilitas dengan algoritma berbasis grayscale, memfasilitasi berbagai komputerTugas visual dan analisis gambar dalam aplikasi Anda.
public override void Grayscale()
InsertBlock(dan Iframe)
Masukkan blok WebP baru pada indeks yang ditentukan di dalam gambar, memungkinkan ketepatanmengontrol urutan blok. mengintegrasikan metode ini untuk mengintegrasikanBlok WebP tambahan ke dalam struktur data gambar, memfasilitasi gambar lanjutanPemprosesan dan optimasi dalam aplikasi Anda.
public void InsertBlock(int index, IFrame block)
Parameters
index
int
Elemen berbasis nol, di mana block’ akan dimasukkan.
block
IFrame
Blok Webp untuk ditambahkan.
ReleaseManagedResources()
Pastikan tidak ada sumber daya yang tidak dikelola yang dilepaskan di sini, karena mereka mungkin telahsudah dibebaskan.
protected override void ReleaseManagedResources()
RemoveBlock(Iframa)
Menghapus blok WebP yang ditentukan dari gambar, memfasilitasi manajemen yang efisienMenggunakan metode ini untuk mempercepat pemrosesan gambaraliran kerja dengan menghapus blok atau komponen yang tidak perlu di dalam aplikasi Anda.
public void RemoveBlock(IFrame block)
Parameters
block
IFrame
blok yang harus dihapus.
Remarks
Catatan: jangan lupa untuk menyesuaikan block’ jika Anda tidak ingin menambahkan ke WebPImage lainnya.
Resize(int, int, resizeType)
Mengembalikan gambar, menyesuaikan dimensi sambil mempertahankan proporsi aspek.Mengintegrasikan metode ini ke dalam aliran kerja pemrosesan gambar Anda untuk skala dinamisGambar untuk memenuhi berbagai persyaratan paparan atau penyimpanan dalam aplikasi Anda.
public override void Resize(int newWidth, int newHeight, ResizeType resizeType)
Parameters
newWidth
int
dengan lebar yang baru.
newHeight
int
ketinggian yang baru.
resizeType
ResizeType
dengan jenis resize.
Examples
Contoh ini memuat gambar WEBP dan menggunakannya kembali menggunakan berbagai metode resizing.
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 gambar sesuai dengan pengaturan yang ditentukan, memungkinkan kontrol yang akuratdimensi, proporsi aspek, dan perilaku skala. mengintegrasikan metode ini ke dalamaliran kerja pemrosesan gambar untuk mencapai operasi resing tersuai disesuaikan denganpersyaratan spesifik dari aplikasi Anda.
public override void Resize(int newWidth, int newHeight, ImageResizeSettings settings)
Parameters
newWidth
int
dengan lebar yang baru.
newHeight
int
ketinggian yang baru.
settings
ImageResizeSettings
Sesuai dengan peraturan resize.
ResizeHeightProportionally(Tipe, ResizeType)
Menetapkan ketinggian gambar secara proporsional, sambil mempertahankan proporsi aspeknyaMengintegrasikan metode ini ke dalam aliran kerja pemrosesan gambar Andauntuk menggambar secara dinamis dengan proporsi yang seragam, memastikan paparan optimal atauPenyimpanan dalam aplikasi Anda.
public override void ResizeHeightProportionally(int newHeight, ResizeType resizeType)
Parameters
newHeight
int
ketinggian yang baru.
resizeType
ResizeType
Jenis dari resize.
ResizeWidthProportionally(Tipe, ResizeType)
Secara proporsional menyesuaikan lebar gambar sambil mempertahankan proporsi aspeknya.Mengintegrasikan metode ini ke dalam aliran kerja pemrosesan gambar Anda untuk secara dinamis resizegambar dengan proporsi yang konsisten, memastikan tampilan atau penyimpanan optimal di dalampermohonan Anda.
public override void ResizeWidthProportionally(int newWidth, ResizeType resizeType)
Parameters
newWidth
int
dengan lebar yang baru.
resizeType
ResizeType
Jenis dari resize.
Rotate(Bulu, Bulu dan Warna)
berputar gambar di sekitar pusatnya dengan sudut tertentu, sementara proporsionalmengembalikannya dan menerapkan parameter warna latar belakang yang ditentukan.metode ke dalam aliran kerja pemrosesan gambar Anda untuk mencapai transformasi yang akurat denganwarna latar belakang yang dapat disesuaikan, memastikan presentasi visual yang optimal di dalamuntuk aplikasi.
public override void Rotate(float angle, bool resizeProportionally, Color backgroundColor)
Parameters
angle
float
Sudut berputar dalam derajat. nilai positif akan berputar secara jam.
resizeProportionally
bool
Jika Anda menetapkan ‘kebenaran’ Anda akan memiliki ukuran gambar Anda berubah sesuai dengan proyeksi rektangle (titik sudut) yang ditarik di tempat lain yang meninggalkan dimensi tidak disentuh dan hanyainternal konten gambar ditarik.
backgroundColor
Color
warna dari latar belakang.
RotateFlip(RotateFlipType)
Mengaplikasikan rotasi, flipping, atau keduanya operasi secara eksklusif pada frame aktif.Mengintegrasikan metode ini ke dalam aliran kerja pemrosesan gambar Anda untukmemberikan manipulasi yang akurat dari bingkai individu, meningkatkan fleksibilitas danMengendalikan transformasi frame dalam aplikasi Anda.
public override void RotateFlip(RotateFlipType rotateFlipType)
Parameters
rotateFlipType
RotateFlipType
Jenis flip rotasi.
SaveData(Stream)
Simpan data tersebut.
protected override void SaveData(Stream stream)
Parameters
stream
Stream
Aliran untuk menyimpan data ke.
UpdateDimensions(dengan int, int)
Mengemas kini dimensi gambar.
protected override void UpdateDimensions(int newWidth, int newHeight)
Parameters
newWidth
int
Gambar baru yang luas.
newHeight
int
Ketinggian gambar baru.