Ruota o capovolgi le immagini in C# .NET

Quando si lavora con le immagini, potrebbe essere necessario ruotarle con diverse angolazioni. Inoltre, in vari casi vengono utilizzati anche ribaltamenti orizzontali e verticali. Entrambi sono considerati le caratteristiche chiave di ogni editor di immagini. In questo articolo imparerai come ruotare e capovolgere le immagini a livello di codice in C#.

API C# .NET per ruotare e capovolgere le immagini

Per ruotare e capovolgere le immagini dall’interno delle applicazioni .NET, utilizzeremo Aspose.Imaging for .NET. È un’API di elaborazione delle immagini che fornisce un’ampia gamma di funzionalità per manipolare vari tipi di immagini. Inoltre, nasconde le operazioni complesse e semplifica notevolmente l’elaborazione delle immagini. Puoi scaricare l’API o installarla nelle tue applicazioni .NET usando NuGet.

PM> Install-Package Aspose.Imaging

Ruota e capovolgi un’immagine in C#

Per ruotare un’immagine, devi specificare un angolo di rotazione. Gli angoli più comunemente usati sono 90, 180 e 270 gradi. Inoltre, le immagini vengono capovolte orizzontalmente o verticalmente. Aspose.Imaging per .NET si occupa della rotazione e del capovolgimento allo stesso tempo. Per questo, l’API fornisce RotateFlipType enum per specificare l’angolo di rotazione e il tipo di capovolgimento. È possibile eseguire le seguenti operazioni di capovolgi/ruota su un’immagine:

  • Ruota solo
  • Capovolgi solo
  • Entrambi ruotano e capovolgono

Vediamo come eseguire ciascuna delle operazioni sopra menzionate nell’immagine seguente.

Immagine per rotazione e capovolgimento

Ruota un’immagine in C#

Per prima cosa, diamo un’occhiata a come ruotare un’immagine. Le seguenti opzioni vengono utilizzate per ruotare un’immagine senza capovolgerla.

  • Rotate180FlipNone: rotazione di 180 gradi senza capovolgimento
  • Rotate270FlipNone: rotazione di 270 gradi senza capovolgimento
  • Rotate90FlipNone: rotazione di 90 gradi senza capovolgimento

Di seguito sono riportati i passaggi per eseguire la rotazione di un’immagine in C#.

Il frammento di codice seguente mostra come ruotare un’immagine a un angolo particolare.

// Carica un'immagine in un'istanza di Image
using (Image image = Image.Load("image.bmp"))
{
    // Ruota l'immagine
    image.RotateFlip(RotateFlipType.Rotate270FlipNone);

    // Salva immagine
    image.Save("image-rotated.bmp");
}

Quella che segue è l’immagine ruotata che otteniamo dopo aver eseguito questo codice.

ruota un'immagine in C#

Ruota un’immagine

Capovolgi un’immagine in C#

Ora, dai un’occhiata a come capovolgere un’immagine senza rotazione. Per questo, vengono utilizzati i seguenti membri RotateFlipType.

  • RotateNoneFlipX: nessuna rotazione con ribaltamento orizzontale
  • RotateNoneFlipY: nessuna rotazione con ribaltamento verticale
  • RotateNoneFlipXY: nessuna rotazione con ribaltamento orizzontale e verticale

Di seguito sono riportati i passaggi per capovolgere un’immagine in C#.

L’esempio di codice seguente mostra come capovolgere un’immagine nelle applicazioni .NET.

// Carica un'immagine in un'istanza di Image
using (Image image = Image.Load("image.bmp"))
{
    // Capovolgi l'immagine
    image.RotateFlip(RotateFlipType.RotateNoneFlipX);

    // Salva immagine
    image.Save("image-flipped.bmp");
}

Lo screenshot seguente mostra come l’immagine viene capovolta utilizzando lo snippet di codice sopra.

Capovolgi un'immagine in C#

Capovolgi un’immagine

Ruota e capovolgi un’immagine in C#

In questa sezione vedremo come ruotare e capovolgere l’immagine allo stesso tempo. Per ottenere ciò, vengono utilizzati i seguenti membri di RotateFlipType enum.

  • Rotate180FlipX: rotazione di 180 gradi con ribaltamento orizzontale
  • Rotate180FlipXY: rotazione di 180 gradi con ribaltamento orizzontale e verticale
  • Rotate180FlipY: rotazione di 180 gradi con ribaltamento verticale
  • Rotate270FlipX: rotazione di 270 gradi con ribaltamento orizzontale
  • Rotate270FlipXY: rotazione di 270 gradi con ribaltamento orizzontale e verticale
  • Rotate270FlipY: rotazione di 270 gradi con ribaltamento verticale
  • Rotate90FlipX: rotazione di 90 gradi con ribaltamento orizzontale
  • Rotate90FlipXY: rotazione di 90 gradi con ribaltamento orizzontale e verticale
  • Rotate90FlipY: rotazione di 90 gradi con ribaltamento verticale

Di seguito sono riportati i passaggi per ruotare e capovolgere un’immagine in C#.

Il frammento di codice C# seguente mostra come eseguire la rotazione e il capovolgimento contemporaneamente.

// Carica un'immagine in un'istanza di Image
using (Image image = Image.Load("image.bmp"))
{
    // Ruota e capovolgi l'immagine
    image.RotateFlip(RotateFlipType.Rotate180FlipX);

    // Salva immagine
    image.Save("image-rotated-flipped.bmp");
}

Lo screenshot seguente mostra come appare l’immagine dopo aver applicato la rotazione e il capovolgimento.

Ruota e capovolgi un'immagine in C#

Ruota e capovolgi un’immagine

Ottieni una licenza API gratuita

Puoi ottenere una licenza temporanea gratuita per utilizzare Aspose.Imaging per .NET senza limitazioni di valutazione.

Conclusione

In questo articolo si è appreso come ruotare e capovolgere le immagini a livello di codice in C#. Inoltre, la guida passo passo e gli esempi di codice hanno dimostrato come ruotare un’immagine, capovolgere un’immagine e ruotare e capovolgere un’immagine allo stesso tempo. Inoltre, puoi esplorare di più sull’API di elaborazione delle immagini .NET utilizzando documentazione. Inoltre, puoi scaricare gli esempi di codice sorgente dell’API da GitHub. In caso di domande, puoi contattarci sul nostro forum.

Guarda anche