Class WebPImage
اسم الفضاء : Aspose.Imaging.FileFormats.Webp تجميع: Aspose.Imaging.dll (25.4.0)
التعامل مع صور WebP مع API، باستخدام ميزاتها الحديثة لكل منهماضغط خالية من الخسائر والخسائر، وضمان جودة الصورة المثلى مع الحد من حجم الملفات.التعامل بسهولة مع تنسيقات الملفات الموسعة والرسوم المتحركة والقنوات الألفا، وفي الوقت نفسه بسهولةتحديث الأبعاد، إعادة التدوير نسبيا، الحفر، الدوران، تطبيق الفلاتر،تعديل المعلمات الصورة، وتحويلها إلى تنسيقات الصورة الأخرى لمتنوعةتحسين صورة الويب.
[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
الأعضاء الموروثين
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
هذا المثال يظهر كيفية تحميل صورة WebP من ملف وتخزينه إلى 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)
تثبيت مثال جديد من فئة Aspose.Imaging.FileFormats.Webp.WebPImage، بدءامن مصدر تدفق متوفر.استخدم هذا البناء لإنشاء WebP بسهولةصور الأشياء مباشرة من التدفقات، مما يتيح التعامل الفعال والتلاعببيانات صورة WebP داخل تطبيقك.
public WebPImage(Stream stream)
Parameters
stream
Stream
تصفية WebP.
Examples
هذا المثال يظهر كيفية تحميل صورة WebP من تدفق الملفات وتخزينها إلى 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(تداول الخيارات , LoadOptions)
إنشاء مثال جديد من فئة Aspose.Imaging.FileFormats.Webp.WebPImage باستخدام تدفق وخيارات التحميل المحددة، مما يسهل المعالجة المتنوعة لبيانات صورة WebP.إدراج هذا المبدع لإطلاق الأشياء الضوئية WebP منتدفقات أثناء تخصيص معايير الشحن كما هو مطلوب داخل تطبيقك.
public WebPImage(Stream stream, LoadOptions loadOptions)
Parameters
stream
Stream
تصفية WebP.
loadOptions
LoadOptions
خيارات الحمل .
WebPimage(الستار)
تثبيت مثال جديد من فئة Aspose.Imaging.FileFormats.Webp.WebPImage، بدءامن مصدر الملفات المقدمة.استخدم هذا البناء لإنشاء WebP بسهولةصور الكائنات مباشرة من الملفات، وتسريع عملية التحميل والتلاعب ببيانات صورة WebP داخل تطبيقك.
public WebPImage(string path)
Parameters
path
string
الطريق إلى ملف WebP Image
Examples
هذا المثال يظهر كيفية تحميل صورة WebP من ملف وتخزينه إلى 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(الخصائص، LoadOptions)
إنشاء مثال جديد من فئة Aspose.Imaging.FileFormats.Webp.WebPImage باستخدام ملف وخيارات التحميل المحددة، مما يسهل المعالجة المرنة لبيانات صورة WebP.هذا البناء يبدأ بسهولة كائنات صورة WebP من الملفات بينماتخصيص معايير الشحن وفقًا لمتطلبات تطبيقك.
public WebPImage(string path, LoadOptions loadOptions)
Parameters
path
string
الطريق إلى ملف WebP Image
loadOptions
LoadOptions
خيارات الحمل .
WebPimage(RasterImage)
تثبيت مثال جديد من فئة Aspose.Imaging.FileFormats.Webp.WebPImage، بدءامن المقدم rasterImage الكائن.هذا البناء يسمحتحويل صور الرسومات إلى تنسيق WebP، مما يتيح التعامل الفعال والتلاعب بالبيانات الصورة داخل تطبيقك.
public WebPImage(RasterImage rasterImage)
Parameters
rasterImage
RasterImage
الصورة الرائعة
Examples
هذا المثال يظهر كيفية إنشاء صورة WebP من صورة أخرى.
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 و LoadOptions)
إنشاء مثال جديد من فئة Aspose.Imaging.FileFormats.Webp.WebPImage باستخدام كائن rasterImage وخيارات التحميل المحددة، مما يتيح التعامل المرن مع بيانات الصورة.البناء يبدأ بسهولة كائنات صورة WebP من صور الرسوم المتحركة بينماتخصيص معايير الشحن وفقًا لمتطلبات تطبيقك.
public WebPImage(RasterImage rasterImage, LoadOptions loadOptions)
Parameters
rasterImage
RasterImage
الصورة الرائعة
loadOptions
LoadOptions
خيارات الحمل .
WebPimage(إنت، إنت، WebPOptions)
تثبيت مثال جديد من فئة Aspose.Imaging.FileFormats.Webp.WebPImage مع فارغةصورة من الأبعاد المحددة العرض والارتفاع.هذا المصمم يسمحإنشاء صور WebP البيضاء، وتوفير الأساس للصورة اللاحقةالتلاعب وتوليد المحتوى داخل تطبيقك.
public WebPImage(int width, int height, WebPOptions options)
Parameters
width
int
عرض الصورة
height
int
ارتفاع الصورة .
options
WebPOptions
الخيارات .
Examples
هذا المثال يظهر كيفية إنشاء صورة WebP مع الخيارات المحددة من القطع.
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");
}
هذا المثال يظهر كيفية إنشاء صورة WebP الرسوم المتحركة متعددة الإطارات مع الخيارات المحددة.
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)
إنشاء مثال جديد من فئة Aspose.Imaging.FileFormats.Webp.WebPImage مع صورة فارغة ومحددةخيارات التحميل.هذا البناء يسمح لإطلاق صور WebP معالمعايير المخصصة للشحن، وتوفير مرونة في إنشاء الصورة والتلاعب داخل تطبيقك.
public WebPImage(int width, int height, WebPOptions options, LoadOptions loadOptions)
Parameters
width
int
عرض الصورة
height
int
ارتفاع الصورة .
options
WebPOptions
الخيارات .
loadOptions
LoadOptions
خيارات الحمل .
Properties
FileFormat
الوصول إلى قيمة تنسيق الملف المرتبطة بالصورة، وتوفير المعلوماتعن النموذج الذي يتم فيه تخزين الصورة.استخدم هذا الممتلكات لتحديدتنسيق ملف الصورة ، مما يسهل فحوصات التوافق ومعالجة شكل محدد داخل تطبيقك.
public override FileFormat FileFormat { get; }
قيمة الممتلكات
HasAlpha
تحديد ما إذا كانت الصورة تحتوي على قناة ألفا ، مما يشير إلى وجودمعلومات الشفافية.استخدم هذه الممتلكات لتحديد ما إذا كانت الصورةوتشمل الشفافية، مما يتيح المعالجة المناسبة ومعالجةالعمليات ذات الصلة بالألفا داخل تطبيقك.
public override bool HasAlpha { get; }
قيمة الممتلكات
Examples
يحتوي المثال التالي على صورة WEBP ويطبع معلومات عن تنسيق البيانات الخام وقناة ألفا.
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
استرداد أو تعديل الخيارات المرتبطة بالممتلكات المحددة، مما يتيحتخصيص السلوك والترتيبات بشكل جيد.استخدام هذه الممتلكاتالوصول إلى المعايير القابلة للتكوين والتلاعب بها، مما يسهل الوصول إلى المعايير المتنوعةالتحكم والتحسين ضمن وظائف تطبيقك.
[JsonProperty]
public WebPOptions Options { get; }
قيمة الممتلكات
PageCount
استرداد العدد الإجمالي للصفحات داخل الوثيقة المحددة، وتسهيلالملاحة الفعالة وإدارة محتوى متعدد الصفحات.إدراج هذاوظائف لتعزيز تجربة المستخدم، مما يتيح الوصول إلىالهياكل الوثائقية الشاملة.
public override int PageCount { get; }
قيمة الممتلكات
Pages
الوصول إلى الكتل WebP داخل الصورة، مما يسمح بفحص مفصل أوالتلاعب بنية الكتلة الأساسية.استخدم هذه الخصائص لتحليلأو تعديل الكتل الفردية داخل بيانات الصورة WebP، مما يسهلتقنيات معالجة الصور داخل تطبيقك.
public override Image[] Pages { get; }
قيمة الممتلكات
Image [ ]
Methods
AddBlock(إيفرام)
إدراج كتلة WebP الجديدة في الصورة، وإثراء محتوياتها ويسهل التلاعب بالصور المتقدمة.دمج هذه الطريقة بشكل ديناميكيتحسين هيكل و تعقيد بيانات الصورة WebP داخلالتطبيق، مما يتيح التحكم الدقيق وتحسين عرض الصور.
public void AddBlock(IFrame block)
Parameters
block
IFrame
يضيف Webp Block.
Examples
هذا المثال يظهر كيفية إنشاء صورة WebP الرسوم المتحركة متعددة الإطارات مع الخيارات المحددة.
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)
إضافة صفحة جديدة إلى الصورة، وتوسيع محتوىها، وتوفير المزيدالعناصر البصرية.دمج هذه الطريقة لتسهيل إدارة الصفحة الديناميكيةداخل تطبيقك، مما يسمح بإنشاء وزيادة العديد من الصفحاتالوثائق أو الصور.
public void AddPage(RasterImage page)
Parameters
page
RasterImage
الصفحة التي أضيفها
Exceptions
page’ is null.
AdjustBrightness(إنت)
تنفيذ تعديل brightness" للصورة، مما يسمح بتعديل مستويات الإضاءة الإجمالية.إدراج هذه الطريقة في تدفق عمل معالجة الصور الخاص بك لتحسين الرؤية وتحسين الجودة البصرية للصورفي تطبيقك.
public override void AdjustBrightness(int brightness)
Parameters
brightness
int
قيمة الضوء
AdjustContrast(السفينة)
تحسين تناقض Aspose.Imaging.Image، وتعزيزالاختلافات بين المناطق الضوئية والظلامية.دمج هذه الطريقة في صورتكمعالجة تدفق العمل لتحسين الوضوح البصري ونوعية الصورة العامة داخلالتطبيق الخاص بك
public override void AdjustContrast(float contrast)
Parameters
contrast
float
قيمة التباين (في نطاق [-100؛ 100])
AdjustGamma(السفينة)
تطبيق تصحيح غاما على الصورة، وتعديل كثافة البكسل لتحقيقالضوء المطلوب وتوازن الألوان.إدراج هذه الطريقة في صورتكمعالجة تدفق العمل لتحسين الجودة البصرية وتحسين دقةتحليل أو عرض المهام اللاحقة داخل تطبيقك.
public override void AdjustGamma(float gamma)
Parameters
gamma
float
غاما لعدد القنوات الحمراء والخضراء
AdjustGamma(السفينة، السفينة، السفينة)
إجراء تصحيح غاما على الصورة باستخدام المعايير الفردية للأحمر ،القنوات الخضراء والأزرق، مما يتيح التعديلات الجميلة لتوازن الألوان وإدماج هذه الطريقة في خط أنابيب معالجة الصور الخاص بك لتحقيقالتحكم الدقيق في عرض الألوان وتعزيز الولاء البصري داخلالتطبيق .
public override void AdjustGamma(float gammaRed, float gammaGreen, float gammaBlue)
Parameters
gammaRed
float
القناة الحمراء معدل القناة الحمراء
gammaGreen
float
غاما لـ قناة خضراء
gammaBlue
float
القناة الزرقاء معدل القناة الزرقاء
BinarizeBradley(المزدوج، إنت)
تطبيق التباين على الصورة باستخدام خوارزمية الحد الأقصى التكيفية لـ Bradleyمع الحد الأقصى الشامل للصورة.هذه الطريقة تحسب بشكل ديناميكي المحليةالحدود القائمة على حي الصورة، وتعزيز التكيف مع التباينظروف الإضاءة وضمان تقسيم قوي لعملية المعالجة اللاحقةالمهام داخل طلبك.
public override void BinarizeBradley(double brightnessDifference, int windowSize)
Parameters
brightnessDifference
double
الفرق في الضوء بين بكسل ومتوسط نافذة بكسل s x sتركز حول هذا البكسل.
windowSize
int
حجم نافذة x s من البكسلات التي تركز حول هذا البكسل
BinarizeFixed(بيوت)
إجراء التباين على الصورة باستخدام قيمة الحد الأقصى المحددة مسبقا، وتحويليتم تصنيفها في صورة ثنائية حيث يتم تصنيف البكسل على أنها خلفية أو الأمامية.وفقًا لتقديراتهم المرتبطة بالحد الأقصى.إدراج هذه الطريقة فيتدفق عمل معالجة الصورة الخاص بك لتسهيل الانقسام واستخراج الميزاتالمهام، وتعزيز دقة وكفاءة التحليل اللاحق داخلالتطبيق .
public override void BinarizeFixed(byte threshold)
Parameters
threshold
byte
إذا كانت القيمة الرمادية المقابلة للبكسل أكبر من الحد الأقصى، فإن قيمة255 سيتم تخصيصها ، 0 خلاف ذلك.
BinarizeOtsu()
إجراء التحليل الثنائي على الصورة باستخدام طريقة الحد الأقصى لـ Otsu ، تلقائيًاتحديد قيمة الحد الأقصى الأمثل استنادًا إلى هيستوغرام الصورة.هذه الطريقة في تدفق عمل معالجة الصور الخاص بك لتحقيق تقسيم فعالواستخراج الميزات، وتعزيز دقة وموثوقية تحليل الصورةالمهام داخل طلبك.
public override void BinarizeOtsu()
ClearBlocks()
إزالة جميع الكتل WebP الموجودة من الصورة ، مما يسهل التخزين النظيفالتعديلات أو الإضافات اللاحقة.استخدم هذه الطريقة لإعادة التثبيت الفعالهيكل الكتلة داخل بيانات الصورة WebP، وضمان الإدارة المثلى وتنظيم محتوى الصورة داخل تطبيقك.
public void ClearBlocks()
Crop(Rectangle)
زرع الصورة باستخدام منطقة مستقيمة محددة ، وإزالة الأجزاء غير المرغوب فيهاأثناء الحفاظ على المحتوى المطلوب.دمج هذه الطريقة في صورتكمعالجة تدفق العمل من أجل الاستخراج الدقيق والتركيز على مناطق معينة من الاهتمامداخل الصورة، وتعزيز الوضوح والتكوين لمختلف التطبيقات.
public override void Crop(Rectangle rectangle)
Parameters
rectangle
Rectangle
من المستطيل .
Crop(إنت، إنت، إنت، إنت)
زرع الصورة عن طريق تطبيق التحولات اليسارية واليمينية والأعلى والأسفل بفعاليةاختيار منطقة من الاهتمام داخل الصورة.استخدم هذه الطريقةاستخراج الأجزاء المطلوبة من الصورة بشكل ديناميكي مع تعديل تركيبهاوالتركيز وفقا لمتطلبات تطبيقك.
public override void Crop(int leftShift, int rightShift, int topShift, int bottomShift)
Parameters
leftShift
int
يتغير اليسار .
rightShift
int
التغيير الصحيح
topShift
int
التغيير العلوي
bottomShift
int
التغيير السفلي .
Dither(DitheringMethod، int، IColorPalette)
أداء التصوير على الصورة الحالية للحد من الارتباط باللون وتحسين الرؤيةجودة.دمج هذه الطريقة في تدفق عمل معالجة الصور الخاص بك لتحقيقتحسين التبديلات بين الألوان وتحسين المظهر العام للألوانصورة داخل تطبيقك
public override void Dither(DitheringMethod ditheringMethod, int bitsCount, IColorPalette customPalette)
Parameters
ditheringMethod
DitheringMethod
الطريقة المضغوطة .
bitsCount
int
النقاط النهائية تحسب لالتقاط.
customPalette
IColorPalette
أضف تعليق لـ DITERING.
Filter(الخيارات الثنائية، FilterOptionsBase)
تصفية المحتوى داخل المستطيل المحدد، وتطبيق الصورة المحددةتصفية المعالجة لتعزيز أو تعديل المنطقة المختارة.في تدفق عمل التحكم في الصورة الخاص بك لتحقيق التحسينات المستهدفة أوتحويلات داخل تطبيقك.
public override void Filter(Rectangle rectangle, FilterOptionsBase options)
Parameters
rectangle
Rectangle
من المستطيل .
options
FilterOptionsBase
الخيارات .
Examples
تنطبق المثال التالي على أنواع مختلفة من الفلاتر على صورة 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()
تحويل الصورة إلى تمثيلها الرمادي ، وتحويلها إلىصورة قناة واحدة حيث يمثل كل بكسل الكثافة أو الضوء.هذه الطريقة في خط أنابيب معالجة الصور الخاص بك لتبسيط التحليل وتحسينالتوافق مع الخوارزميات القائمة على مقياس ، مما يسهل مختلف أجهزة الكمبيوتروظائف تحليل الرؤية والصور داخل تطبيقك.
public override void Grayscale()
InsertBlock(إيت، إيفرام)
إدراج كتلة WebP جديدة في المؤشر المحدد داخل الصورة، مما يتيح دقةالسيطرة على سلسلة الكتلة.دمج هذه الطريقة لدمجها بشكل لا يصدقمزيد من الكتل WebP في بنية بيانات الصورة، مما يسهل صورة متقدمةالمعالجة والتحسين داخل تطبيقك.
public void InsertBlock(int index, IFrame block)
Parameters
index
int
العنصر القائم على الصفر، حيث سيتم إدراج block".
block
IFrame
يضيف Webp Block.
ReleaseManagedResources()
إطلاق الموارد التي يتم إدارتها.تأكد من عدم إطلاق الموارد التي لا يتم إدارتها هنا، لأنها قد تكونتم إطلاق سراحها بالفعل
protected override void ReleaseManagedResources()
RemoveBlock(إيفرام)
إزالة كتلة WebP المحددة من الصورة ، مما يسهل الإدارة الفعالةمن هيكل بيانات الصورة.استخدم هذه الطريقة لتسريع معالجة الصورتدفقات العمل عن طريق القضاء على الكتل أو المكونات غير الضرورية داخل تطبيقك.
public void RemoveBlock(IFrame block)
Parameters
block
IFrame
الكتلة لإزالتها.
Remarks
ملاحظة: لا تنسى وضع block’ إذا كنت ترغب في عدم إضافةها إلى بعض WebPImage الأخرى.
Resize(int، int، resizeType)
إعادة تدوير الصورة، وتعديل أبعادها مع الحفاظ على نسبة الجانب.دمج هذه الطريقة في تدفق عمل معالجة الصور الخاص بك على نطاق ديناميكيالصور لتناسب متطلبات العرض أو التخزين المختلفة داخل تطبيقك.
public override void Resize(int newWidth, int newHeight, ResizeType resizeType)
Parameters
newWidth
int
العرض الجديد .
newHeight
int
الارتفاع الجديد
resizeType
ResizeType
هذا النوع من التراجع.
Examples
هذا المثال يحمل صورة WEBP ويعيدها باستخدام أساليب إعادة التدوير المختلفة.
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(إنت، إنت، ImageResizeSettings)
إعادة تدوير الصورة وفقًا للإعدادات المحددة ، مما يتيح التحكم الدقيق فيالأبعاد، ونسبة الجانب، وسلوك التوسع.دمج هذه الطريقة فيتدفق عمل معالجة الصور لتحقيق عمليات إعادة التخصيص المخصصة المخصصةمتطلبات التطبيق الخاصة بك.
public override void Resize(int newWidth, int newHeight, ImageResizeSettings settings)
Parameters
newWidth
int
العرض الجديد .
newHeight
int
الارتفاع الجديد
settings
ImageResizeSettings
إعدادات إعادة التدوير
ResizeHeightProportionally(إنت، إعادة النوع)
تعديل ارتفاع الصورة نسبياً، مع الحفاظ على نسبة الجانبإدراج هذه الطريقة في تدفق عمل معالجة الصور الخاص بكإعادة تدوير الصور بشكل ديناميكي مع نسب متساوية، وضمان العرض الأمثل أوالتخزين داخل تطبيقك.
public override void ResizeHeightProportionally(int newHeight, ResizeType resizeType)
Parameters
newHeight
int
الارتفاع الجديد
resizeType
ResizeType
نوع التراجع .
ResizeWidthProportionally(إنت، إعادة النوع)
تعديل نسبيا عرض الصورة مع الحفاظ على نسبة نظره.دمج هذه الطريقة في تدفق عمل معالجة الصور الخاص بك لإعادة التدوير ديناميكيةالصور ذات النسب المتسقة، لضمان العرض الأمثل أو التخزين داخلالتطبيق الخاص بك
public override void ResizeWidthProportionally(int newWidth, ResizeType resizeType)
Parameters
newWidth
int
العرض الجديد .
resizeType
ResizeType
نوع التراجع .
Rotate(البول، البول، اللون)
تحويل الصورة حول مركزها من زاوية محددة، في حين أن النسبيةإعادة تدويرها وتطبيق المعلمات الملونة الخلفية المحددة.طريقة في سير عمل معالجة الصورة الخاصة بك لتحقيق التحولات الدقيقة معالألوان الخلفية المخصصة، وضمان العرض البصري الأمثل داخلالتطبيق .
public override void Rotate(float angle, bool resizeProportionally, Color backgroundColor)
Parameters
angle
float
زاوية الدوران في درجات.القيم الإيجابية سوف تدور في اتجاه الساعة.
resizeProportionally
bool
إذا قمت بتعيين “الحقيقي” ستكون حجم الصورة الخاص بك قد تغيرتعلى النحو المنحني (نقاط الزاوية) المشاهدات في الحالة الأخرى التي تترك الأبعاد غير ملموسة فقطالداخلية محتوى الصورة يتم توجيهها.
backgroundColor
Color
لون الخلفية
RotateFlip(RotateFlipType)
قم بتطبيق الدوران أو التزلج أو كليهما فقط على الإطار النشط.إدماج هذه الطريقة في تدفق عمل معالجة الصورة الخاص بك إلىتحقق التلاعب الدقيق بالإطارات الفردية، وتعزيز المرونة والتحكم في التحولات الإطارية داخل تطبيقك.
public override void RotateFlip(RotateFlipType rotateFlipType)
Parameters
rotateFlipType
RotateFlipType
نوع الفليب المتحرك.
SaveData(Stream)
تخزين البيانات
protected override void SaveData(Stream stream)
Parameters
stream
Stream
تدفق لتخزين البيانات.
UpdateDimensions(إنت، إنت)
تحديث أبعاد الصورة.
protected override void UpdateDimensions(int newWidth, int newHeight)
Parameters
newWidth
int
عرض الصورة الجديد.
newHeight
int
ارتفاع الصورة الجديدة.