Come comprimere le immagini in C#

Come comprimere le immagini in C#

Integra questa compressione .NET libreria per comprimere i formati di file immagine più diffusi come TIFF, JPG, PNG e altri. Nelle grandi organizzazioni, l’archiviazione dei file è un argomento critico e si tende sempre a ottimizzare i file aziendali e a rendere le loro dimensioni efficienti in termini di memoria. Pertanto, puoi usare questa libreria per comprimere le immagini a livello di codice in un’applicazione .NET. Inoltre, otterrai anche i frammenti di codice e i passaggi su come comprimere le immagini in C#|.

In questa guida verranno trattati i seguenti punti:

Installazione della libreria di compressione .NET

Per quanto riguarda l’installazione di questa API, è semplicissima. Puoi scaricare la sua DLL o installarla eseguendo il comando seguente nel gestore di pacchetti NuGet.

Install-Package Aspose.Imaging

Comprimi JPG a livello di codice

Ora implementeremo come comprimere le immagini in C# a livello di codice. Puoi seguire i passaggi e lo snippet di codice menzionato di seguito:

  1. Istanzia un’istanza della classe Image e chiama il metodo Load per caricare un’immagine JPG.
  2. Inizializza un oggetto della classe JpegOptions.
  3. Impostare il tipo di colore per l’immagine JPEG impostando il valore della proprietà ColorType.
  4. Specificare il tipo di compressione impostando il valore della proprietà CompressionType.
  5. Il metodo Save salverà l’immagine.

Copia e incolla il seguente codice nel tuo file principale:

// Crea un'istanza di Image e class e chiama il metodo Load per caricare un'immagine JPG  
using (var original = Image.Load( "sample.jpg"))
{
    // Inizializza un oggetto della classe JpegOptions 
    var jpegOptions = new JpegOptions()
    {
        // Imposta il tipo di colore per l'immagine jpeg impostando il valore della proprietà ColorType.   
        ColorType = JpegCompressionColorMode.Grayscale,
        // Specificare il tipo di compressione impostando il valore della proprietà CompressionType 
        CompressionType = JpegCompressionMode.Progressive,

    };
    //  Il metodo Salva salverà l'immagine.
    original.Save( "result.jpg", jpegOptions);
}

Come comprimere TIFF in C#

Per comprimere un’immagine TIFF, è necessario seguire i seguenti passaggi:

Di seguito sono riportati i passaggi:

  1. Richiamare il metodo Load per caricare un’immagine TIFF.
  2. Inizializza il costruttore della classe TiffOptions con il valore TiffExpectedFormat.Default.
  3. Impostare il valore della proprietà BitsPerSample.
  4. Inoltre, imposta il valore della proprietà Compressione.
  5. Infine, imposta le proprietà Photometric e Palette.
  6. Chiama il metodo Save per salvare l’immagine.

Copia e incolla il seguente codice nel tuo file principale:

//  Richiamare il metodo Load per caricare un'immagine TIFF  
using (Image image = Image.Load( "sample.tiff"))
{
    // Inizializza il costruttore della classe TiffOptions con il valore TiffExpectedFormat.Default.  
    TiffOptions outputSettings = new TiffOptions(TiffExpectedFormat.Default);
    // Impostare il valore della proprietà BitsPerSample 
    outputSettings.BitsPerSample = new ushort[] { 4 };
    // Inoltre, impostare il valore della proprietà Compression 
    outputSettings.Compression = TiffCompressions.Lzw;
    // Infine imposta le proprietà Fotometriche, Tavolozza  
    outputSettings.Photometric = TiffPhotometrics.Palette;
    outputSettings.Palette = ColorPaletteHelper.Create4BitGrayscale(false);
    // Chiama il metodo Save per salvare l'immagine. 
    image.Save(  "result.tiff", outputSettings);
}

Come ridurre le dimensioni del file PNG?

Questa libreria di compressione .NET offre un’ampia gamma di metodi per manipolare e comprimere facilmente i file PNG.

Di seguito sono riportati i passaggi e il frammento di codice per comprimere PNG a livello di codice:

  1. Carica un’immagine PNG chiamando il metodo Load.
  2. Loop sul possibile intervallo CompressionLevel.
  3. Crea un’istanza della classe PngOptions per ogni PNG risultante, imposta CompressionLevel e salva il risultato sul disco.
  4. Il livello di compressione dell’immagine PNG è compreso tra 0 e 9, dove 9 è la compressione massima e 0 è la modalità di memorizzazione. Impostare il valore della proprietà CompressionLevel.
  5. Richiamare il metodo save per salvare l’immagine.

Copia e incolla il seguente codice nel tuo file principale:

// Carica un'immagine da file chiamando il metodo Load 
using (Image image = Image.Load( "result.png"))
{
    // Loop sul possibile intervallo CompressionLevel 
    for (int i = 0; i <= 9; i++)
    {
        // Crea un'istanza di PngOptions per ogni PNG risultante, Imposta CompressionLevel e Salva il risultato su disco 
        PngOptions options = new PngOptions();
        // Il livello di compressione dell'immagine png nell'intervallo 0-9, dove 9 è la compressione massima e 0 è la modalità di archiviazione. Imposta il valore della proprietà CompressionLevel.
        options.CompressionLevel = i;
        // Richiamare il metodo di salvataggio per salvare l'immagine 
        image.Save(i + "_dam.png", options);
    }
}

Ottieni una licenza gratuita

Puoi usufruire di una licenza temporanea gratuita per provare l’API senza limitazioni di valutazione.

Riassumendo

Possiamo concludere questo post del blog tutorial con la speranza che tu abbia imparato a comprimere le immagini in C#. Inoltre, hai utilizzato questa libreria di compressione .NET per comprimere a livello di codice i formati di file immagine PNG, TIFF e JPG. Soprattutto, puoi visitare la documentazione per conoscere altre funzionalità.

Inoltre, ti suggeriamo di seguire la nostra Guida introduttiva.

Infine, conholdate.com sta scrivendo nuovi post sul blog. Pertanto, si prega di rimanere in contatto per aggiornamenti regolari.

Fai una domanda

Puoi farci sapere le tue domande o richieste sul nostro forum.

Domande frequenti

Come posso comprimere un’immagine in .NET core?

Visita questo link per conoscere i frammenti di codice e i metodi API esposti da questa compressione .NET libreria.

Come comprimere PNG?

Crea un’istanza di PngOptions per ogni PNG risultante, imposta il valore della proprietà CompressionLevel e invoca il metodo save per salvare l’immagine.

Guarda anche