ColorResolution

GifOptions.ColorResolution property

Ottiene o imposta la risoluzione del colore GIF.

public byte ColorResolution { get; set; }

Valore della proprietà

La risoluzione del colore.

Osservazioni

Risoluzione colore - Numero di bit per colore primario disponibile per l’immagine originale, meno 1. Questo valore rappresenta la dimensione di dell’intera tavolozza da cui sono stati selezionati i colori nell’immagine , non il numero di colori effettivamente utilizzati nell’immagine. Ad esempio, se il valore in questo campo è 3, la tavolozza di dell’immagine originale aveva 4 bit per colore primario disponibili per creare l’immagine. Questo valore dovrebbe essere impostato per indicare la ricchezza di della tavolozza originale, anche se non tutti i colori dell’intera tavolozza sono disponibili sulla macchina di origine.

Esempi

Questo esempio mostra come salvare un’immagine BMP in formato GIF utilizzando varie opzioni.

[C#]

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

using (Aspose.Imaging.Image bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(1000, 1000))
{
    // Riempi l'intera immagine con il gradiente blu-giallo.
    Aspose.Imaging.Brushes.LinearGradientBrush gradientBrush = new Aspose.Imaging.Brushes.LinearGradientBrush(
            new Aspose.Imaging.Point(0, 0),
            new Aspose.Imaging.Point(bmpImage.Width, bmpImage.Height),
            Aspose.Imaging.Color.Blue,
            Aspose.Imaging.Color.Yellow);

    Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(bmpImage);
    graphics.FillRectangle(gradientBrush, bmpImage.Bounds);

    Aspose.Imaging.ImageOptions.GifOptions saveOptions = new Aspose.Imaging.ImageOptions.GifOptions();

    // Il numero di bit necessari per memorizzare un colore, meno 1.
    saveOptions.ColorResolution = 7;

    // La correzione della tavolozza significa che ogni volta che l'immagine viene esportata in GIF, i colori dell'immagine sorgente verranno analizzati
    // per creare la tavolozza più adatta (nel caso in cui la tavolozza dell'immagine non esista o non sia specificata nelle opzioni)
    saveOptions.DoPaletteCorrection = true;

    // Carica un'immagine GIF in modo progressivo.
    // Una GIF interlacciata non mostra le sue linee di scansione linearmente dall'alto verso il basso, ma invece la riordina
    // così il contenuto della GIF diventa chiaro anche prima che termini il caricamento.
    saveOptions.Interlaced = true;

    // Salva come GIF senza perdita di dati.
    using (System.IO.Stream stream = System.IO.File.OpenWrite(dir + "output.gif"))
    {
        bmpImage.Save(stream, saveOptions);
        System.Console.WriteLine("The size of the lossless GIF: {0} bytes.", stream.Length);
    }

    // Imposta la massima differenza di pixel consentita. Se maggiore di zero, verrà utilizzata la compressione con perdita.
    // Il valore consigliato per una compressione con perdita ottimale è 80. 30 è una compressione molto leggera, 200 è pesante.
    saveOptions.MaxDiff = 80;

    // Salva come GIF con perdita.
    using (System.IO.Stream stream = System.IO.File.OpenWrite(dir + "output.lossy.gif"))
    {
        bmpImage.Save(stream, saveOptions);
        System.Console.WriteLine("The size of the lossy GIF: {0} bytes.", stream.Length);
    }
}

//L'output potrebbe essere simile a questo:
//La dimensione della GIF senza perdita di dati: 212816 byte.
//La dimensione della GIF con perdita: 89726 byte.

Guarda anche