Ritaglia le immagini in C#

L’editing delle immagini è abbastanza comune in questi giorni e in vari casi è necessario manipolare le immagini per ottenere i risultati desiderati. Come programmatore, potrebbe essere necessario implementare le funzionalità di modifica delle immagini all’interno delle applicazioni che stai creando. Di recente, abbiamo spiegato come ridimensionare, ruotare e capovolgere immagini in modo programmatico. Oggi ti mostreremo come ritagliare le immagini usando C# nelle tue applicazioni .NET. Discuteremo come eseguire il ritaglio delle immagini usando i valori di spostamento o con un rettangolo.

API C# per ritagliare immagini - Download gratuito

Per il ritaglio delle immagini in C#, useremo Aspose.Imaging for .NET. È un’API ricca di funzionalità per manipolare senza problemi le immagini dei formati più diffusi. Puoi scaricare l’API o installarla nelle tue applicazioni .NET usando NuGet.

PM> Install-Package Aspose.Imaging

Ritaglia le immagini in C#

Aspose.Imaging for .NET offre due modi per ritagliare un’immagine. Nel primo metodo, dobbiamo fornire i valori di spostamento a sinistra, a destra, in alto e in basso. Mentre, nel secondo metodo, definiamo un rettangolo per ritagliare una determinata area di un’immagine.

Nelle sezioni seguenti dimostreremo come utilizzare entrambi i metodi sopra menzionati per ritagliare le immagini in C#.

Ritaglia le immagini con i valori di spostamento in C#

Di seguito sono riportati i passaggi per ritagliare un’immagine usando i valori di spostamento in C#.

  • Innanzitutto, carica l’immagine in un oggetto RasterImage usando il metodo Image.Load().
  • Memorizza l’immagine nella cache per prestazioni migliori.
  • Definire i valori di spostamento a sinistra, a destra, in alto e in basso.
  • Passa i valori di spostamento al metodo RasterImage.Crop() per ritagliare l’immagine.
  • Salva l’immagine ritagliata usando il metodo RasterImage.Save().

L’esempio di codice seguente mostra come ritagliare un’immagine in C#.

// Carica l'immagine da ritagliare.
using (RasterImage rasterImage = (RasterImage)Image.Load("image.png"))
{
    // Prima del ritaglio, l'immagine dovrebbe essere memorizzata nella cache per prestazioni migliori.
    if (!rasterImage.IsCached)
    {
        rasterImage.CacheData();
    }

    // Definire i valori di spostamento per tutti e quattro i lati.
    int leftShift = 10;
    int rightShift = 10;
    int topShift = 50;
    int bottomShift = 50;

    // In base ai valori di spostamento, applica il ritaglio sull'immagine. Il metodo di ritaglio sposterà i bordi dell'immagine verso il centro dell'immagine.
    rasterImage.Crop(leftShift, rightShift, topShift, bottomShift);

    // Salva immagine ritagliata.
    rasterImage.Save("cropped.png");
}

Quella che segue è l’immagine di input che abbiamo usato per il ritaglio.

ritaglia l'immagine in C#

Di seguito è riportata l’immagine ritagliata risultante.

ritaglio dell'immagine in C#

Ritaglio dell’immagine C# utilizzando il rettangolo

Puoi anche definire un rettangolo per ritagliare l’area desiderata di un’immagine. I passaggi seguenti illustrano il ritaglio delle immagini con un rettangolo in C#.

  • Innanzitutto, carica l’immagine in un oggetto RasterImage usando il metodo Image.Load().
  • Quindi, memorizza nella cache l’immagine.
  • Crea un oggetto Rettangolo e inizializzalo con la dimensione desiderata.
  • Passa l’oggetto Rectangle al metodo RasterImage.Crop() per ritagliare l’immagine.
  • Salva l’immagine ritagliata usando il metodo RasterImage.Save().

Nell’esempio di codice seguente viene illustrato come eseguire il ritaglio di immagini con un rettangolo in C#.

// Carica l'immagine.
using (RasterImage rasterImage = (RasterImage)Image.Load("image.png"))
{
    // Prima del ritaglio, l'immagine dovrebbe essere memorizzata nella cache per prestazioni migliori.
    if (!rasterImage.IsCached)
    {
        rasterImage.CacheData();
    }

    // Crea un'istanza della classe Rectangle con le dimensioni desiderate e ritaglia l'immagine.
    Rectangle rectangle = new Rectangle(20, 20, 20, 20);             
    rasterImage.Crop(rectangle);

    // Salva immagine ritagliata.
    rasterImage.Save("cropped.png");
}

API di ritaglio di imaging per C#: ottieni una licenza gratuita

Puoi ottenere una licenza temporanea gratuita e ritagliare le immagini senza limitazioni di valutazione.

Crea la tua applicazione di ritaglio delle immagini

In questo articolo hai imparato come ritagliare le immagini in C#. Abbiamo dimostrato un paio di modi per ritagliare un’immagine usando i valori di spostamento o con un rettangolo. Ora puoi creare facilmente la tua applicazione di ritaglio delle immagini o migliorare le capacità di modifica delle immagini dell’applicazione esistente. Per saperne di più sull’API di modifica delle immagini C#, puoi visitare la documentazione. Inoltre, puoi condividere le tue domande con noi tramite il nostro forum.

Guarda anche