WebPOptions

WebPOptions class

Opzioni immagine Webp

public class WebPOptions : ImageOptionsBase

Costruttori

NomeDescrizione
WebPOptions()Default_Costruttore

Proprietà

NomeDescrizione
AnimBackgroundColor { get; set; }Ottiene o imposta il colore dello sfondo dell’animazione.
AnimLoopCount { get; set; }Ottiene o imposta il conteggio del ciclo dell’animazione.
BufferSizeHint { get; set; }Ottiene o imposta l’hint per la dimensione del buffer che è la dimensione massima consentita per tutti i buffer interni.
Disposed { get; }Ottiene un valore che indica se questa istanza è stata eliminata.
FullFrame { get; set; }Ottiene o imposta un valore che indica se [fotogramma intero].
Lossless { get; set; }Ottiene o imposta un valore che indica se questoWebPOptions è senza perdite.
MultiPageOptions { get; set; }Le opzioni multipagina
virtual Palette { get; set; }Ottiene o imposta la tavolozza dei colori.
ProgressEventHandler { get; set; }Ottiene o imposta il gestore dell’evento di avanzamento.
Quality { get; set; }Ottiene o imposta la qualità.
virtual ResolutionSettings { get; set; }Ottiene o imposta le impostazioni di risoluzione.
Source { get; set; }Ottiene o imposta l’origine in cui creare l’immagine.
VectorRasterizationOptions { get; set; }Ottiene o imposta le opzioni di rasterizzazione del vettore.
virtual XmpData { get; set; }Ottiene o imposta il contenitore di metadati XMP.

Metodi

NomeDescrizione
virtual Clone()Clona questa istanza.
Dispose()Elimina l’istanza corrente.

Esempi

Questo esempio mostra come creare un’immagine WebP da un’altra immagine raster con una qualità di compressione diversa.

[C#]

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

// Carica un'animazione GIF
using (Aspose.Imaging.Image image = new Aspose.Imaging.Image.Load(dir + "test.gif"))
{
    // per la compressione senza perdita di dati, aumentando l'impostazione della qualità aumenta la qualità della compressione e diminuisce la dimensione del file
    image.Save(
        dir + "output_lossless_20.webp",
        new  Aspose.Imaging.ImageOptions.WebPOptions() { Lossless = true, Quality = 20 }); // dimensione del file: 42 KB

    image.Save(
        dir + "output_lossless_50.webp",
        new  Aspose.Imaging.ImageOptions.WebPOptions() { Lossless = true, Quality = 50 }); // dimensione del file: 41 KB

    image.Save(
        dir + "output_lossless_80.webp",
        new  Aspose.Imaging.ImageOptions.WebPOptions() { Lossless = true, Quality = 80 }); // dimensione del file: 40 KB


    // per la compressione con perdita di dati, aumentando il valore Qualità aumenta la qualità dell'immagine e aumenta la dimensione del file
    image.Save(
        dir + "output_lossy_20.webp",
        new  Aspose.Imaging.ImageOptions.WebPOptions() { Lossless = false, Quality = 20 }); // dimensione del file: 24 KB

    image.Save(
        dir + "output_lossy_50.webp",
        new  Aspose.Imaging.ImageOptions.WebPOptions() { Lossless = false, Quality = 50 }); // dimensione del file: 36 KB

    image.Save(
        dir + "output_lossy_80.webp",
        new  Aspose.Imaging.ImageOptions.WebPOptions() { Lossless = false, Quality = 80 }); // dimensione del file: 51 KB
}

L’esempio seguente mostra come convertire un’immagine vettoriale multipagina in formato WEBP in modo generale senza fare riferimento a un particolare tipo di immagine.

[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;

    // Esporta solo le prime due pagine. Queste pagine verranno presentate come frame animati nell'output 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);
}

Guarda anche