WebPOptions

WebPOptions class

Параметры изображения WebP

public class WebPOptions : ImageOptionsBase

Конструкторы

ИмяОписание
WebPOptions()Конструктор по умолчанию.

Характеристики

ИмяОписание
AnimBackgroundColor { get; set; }Получает или задает цвет фона анимации.
AnimLoopCount { get; set; }Получает или задает количество циклов анимации.
BufferSizeHint { get; set; }Получает или задает подсказку о размере буфера, которая определяет максимально допустимый размер для всех внутренних буферов.
Disposed { get; }Получает значение, указывающее, удален ли этот экземпляр.
FullFrame { get; set; }Получает или задает значение, указывающее, является ли [полный кадр].
Lossless { get; set; }Получает или задает значение, указывающее, является ли этоWebPOptions без потерь.
MultiPageOptions { get; set; }Многостраничные параметры
virtual Palette { get; set; }Получает или задает цветовую палитру.
ProgressEventHandler { get; set; }Получает или задает обработчик события выполнения.
Quality { get; set; }Получает или устанавливает качество.
virtual ResolutionSettings { get; set; }Получает или задает параметры разрешения.
Source { get; set; }Получает или задает источник для создания изображения в.
VectorRasterizationOptions { get; set; }Получает или задает параметры векторной растеризации.
virtual XmpData { get; set; }Получает или задает контейнер метаданных XMP.

Методы

ИмяОписание
virtual Clone()Клонирует этот экземпляр.
Dispose()Удаляет текущий экземпляр.

Примеры

В этом примере показано, как создать изображение WebP из другого растрового изображения с другим качеством сжатия.

[C#]

string dir = "c:\\temp\\";

// Загружаем GIF-анимацию
using (Aspose.Imaging.Image image = new Aspose.Imaging.Image.Load(dir + "test.gif"))
{
    // для сжатия без потерь увеличение параметра качества увеличивает качество сжатия и уменьшает размер файла
    image.Save(
        dir + "output_lossless_20.webp",
        new  Aspose.Imaging.ImageOptions.WebPOptions() { Lossless = true, Quality = 20 }); // размер файла: 42 КБ

    image.Save(
        dir + "output_lossless_50.webp",
        new  Aspose.Imaging.ImageOptions.WebPOptions() { Lossless = true, Quality = 50 }); // размер файла: 41 КБ

    image.Save(
        dir + "output_lossless_80.webp",
        new  Aspose.Imaging.ImageOptions.WebPOptions() { Lossless = true, Quality = 80 }); // размер файла: 40 КБ


    // для сжатия с потерями увеличение значения Quality повышает качество изображения и увеличивает размер файла
    image.Save(
        dir + "output_lossy_20.webp",
        new  Aspose.Imaging.ImageOptions.WebPOptions() { Lossless = false, Quality = 20 }); // размер файла: 24 КБ

    image.Save(
        dir + "output_lossy_50.webp",
        new  Aspose.Imaging.ImageOptions.WebPOptions() { Lossless = false, Quality = 50 }); // размер файла: 36 КБ

    image.Save(
        dir + "output_lossy_80.webp",
        new  Aspose.Imaging.ImageOptions.WebPOptions() { Lossless = false, Quality = 80 }); // размер файла: 51 КБ
}

В следующем примере показано, как преобразовать многостраничное векторное изображение в формат WEBP в общем виде без ссылки на конкретный тип изображения.

[C#]

string dir = "C:\\aspose.imaging\\net\\misc\\ImagingReleaseQATester\\Tests\\testdata\\2548";
string inputFilePath = System.IO.Path.Combine(dir, "Multipage.cdr");
string outputFilePath = System.IO.Path.Combine(dir, "Multipage.cdr.webp");

Aspose.Imaging.ImageOptionsBase exportOptions = new Aspose.Imaging.ImageOptions.WebPOptions();

using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(inputFilePath))
{
    exportOptions.MultiPageOptions = null;

    // Экспортировать только первые две страницы. Эти страницы будут представлены в виде анимированных кадров в выходном WEBP.
    Aspose.Imaging.IMultipageImage multipageImage = image as Aspose.Imaging.IMultipageImage;
    if (multipageImage != null && (multipageImage.Pages != null && multipageImage.PageCount > 2))
    {
        exportOptions.MultiPageOptions = new Aspose.Imaging.ImageOptions.MultiPageOptions(new Aspose.Imaging.IntRange(0, 2));
    }

    if (image is Aspose.Imaging.VectorImage)
    {
        exportOptions.VectorRasterizationOptions = (Aspose.Imaging.ImageOptions.VectorRasterizationOptions)image.GetDefaultOptions(new object[] { Aspose.Imaging.Color.White, image.Width, image.Height });
        exportOptions.VectorRasterizationOptions.TextRenderingHint = Aspose.Imaging.TextRenderingHint.SingleBitPerPixel;
        exportOptions.VectorRasterizationOptions.SmoothingMode = Aspose.Imaging.SmoothingMode.None;
    }

    image.Save(outputFilePath, exportOptions);
}

Смотрите также