Ridimensiona le immagini C#

Il ridimensionamento delle immagini è un’operazione comune nell’elaborazione delle immagini, utile in vari scenari come la preparazione delle immagini per la pubblicazione web, le miniature o la riduzione delle dimensioni dei file. In questo articolo, esploreremo come ridimensionare le immagini in C#. Imparerai come ridimensionare le immagini raster come JPG o PNG, eseguire il ridimensionamento proporzionale e gestire immagini vettoriali come SVG con precisione.

Perché Ridimensionare le Immagini in C#?

Ridimensionare le immagini in modo programmatico ti offre la possibilità di automatizzare e scalare le attività di elaborazione delle immagini senza intervento manuale. Ecco alcune ragioni per cui questo è necessario:

  • Aiuta a ottimizzare le dimensioni delle immagini per ridurre i tempi di caricamento e l’uso di banda nelle app web.
  • Garantisce una visualizzazione coerente su diverse piattaforme e dimensioni dello schermo.
  • Aiuta a generare anteprime e miniature di immagini in modo dinamico.
  • Consente regolazioni automatiche delle immagini in flussi di lavoro come la generazione di documenti, l’archiviazione o la pubblicazione.

Ridimensionare le immagini - Installazione dell’API C#

Puoi installare l’ultima versione stabile di Conholdate.Total per .NET utilizzando il seguente comando di installazione NuGet nel tuo sistema:

PM> NuGet\Install-Package Conholdate.Total

Ridimensiona le immagini in C#

Iniziamo con il ridimensionamento di base delle immagini raster come JPG utilizzando dimensioni fisse in C#. Segui semplicemente i passaggi riportati di seguito:

  1. Carica un’immagine JPG da file usando Image.Load().
  2. Chiama il metodo Resize() per impostare la larghezza e l’altezza a 300 pixel ciascuno.
  3. Salva l’immagine ridimensionata utilizzando image.Save().

Il codice di esempio seguente dimostra il ridimensionamento delle immagini in C#:

// Carica immagine
using (Image image = Image.Load("aspose-logo.jpg"))
{
    // Ridimensiona l'immagine e salva l'immagine ridimensionata
    image.Resize(300, 300);
    image.Save("SimpleResizing_out.jpg");
}

Ridimensionare le immagini proporzionalmente in C#

Questa sezione dimostra come ridimensionare un’immagine PNG mantenendo il suo rapporto d’aspetto originale in C#.

  1. Carica l’immagine PNG utilizzando Image.Load().
  2. Controlla se l’immagine è memorizzata nella cache; in caso contrario, chiama CacheData() per le prestazioni.
  3. Dividi la larghezza e l’altezza attuali per 2 per calcolare le nuove dimensioni proporzionali.
  4. Usa ResizeWidthProportionally() e ResizeHeightProportionally() per mantenere il rapporto di aspetto.
  5. Salva l’immagine ridimensionata con il metodo image.Save().

Il seguente frammento di codice mostra il ridimensionamento proporzionale delle immagini in C#:

// Carica immagine
using (Image image = Image.Load("aspose-logo.png"))
{
    // Cache image data
    if (!image.IsCached)
    {
        image.CacheData();
    }
    
    // Specifica larghezza e altezza
    int newWidth = image.Width / 2;
    image.ResizeWidthProportionally(newWidth);
    int newHeight = image.Height / 2;
    image.ResizeHeightProportionally(newHeight);
    
    // Salva immagine
    image.Save("ResizeImageProportionally_out.png");

Ridimensionare le immagini vettoriali in C#

Questo esempio illustra come ridimensionare un’immagine vettoriale (SVG) in C#:

  1. Carica un’immagine vettoriale SVG utilizzando Image.Load().
  2. Moltiplica la larghezza e l’altezza attuale per i fattori di scala (10 e 15).
  3. Chiama Resize() con la nuova larghezza e altezza.
  4. Salva l’immagine ridimensionata come PNG utilizzando image.Save() con PngOptions.
  5. Specifica le SvgRasterizationOptions per garantire una corretta visualizzazione dell’immagine vettoriale.

Il codice di esempio qui sotto spiega come ridimensionare le immagini vettoriali in C#:

// Carica immagine
using (Image image = Image.Load("image.svg"))
 {
    // Ridimensiona l'immagine come PNG
    image.Resize(image.Width * 10,image.Height * 15);
    image.Save("Logotype_10_15.png", new PngOptions()
    {
        VectorRasterizationOptions = new SvgRasterizationOptions()
    });
 }

Licenza di Valutazione Gratuita

Puoi valutare queste così come molte altre funzionalità offerte dall’API ottenendo una licenza temporanea gratuita.

Riassumendo

Il ridimensionamento delle immagini è una funzione essenziale per le applicazioni che gestiscono, visualizzano o esportano contenuti visivi. Con Conholdate.Total per .NET, ridimensionare immagini in C# diventa efficiente e favorevole agli sviluppatori. Supporta una varietà di formati e fornisce un controllo preciso sul comportamento di ridimensionamento, sia che tu stia lavorando con dimensioni fisse, mantenendo i rapporti di aspetto o convertendo immagini vettoriali. Tuttavia, se hai domande, non esitare a contattarci su forum.

Vedi anche