Crop bilder C#

Die programmgesteuerte Arbeit mit Bildern in C# ermöglicht es Entwicklern, verschiedene Manipulationen wie Ändern der Größe, Drehen und Zuschneiden durchzuführen. Unter diesen Aufgaben ist das Zuschneiden besonders nützlich, wenn Sie einen bestimmten Bereich aus einem Bild extrahieren oder unerwünschte Ränder entfernen möchten. In diesem Leitfaden konzentrieren wir uns darauf, wie man Bilder in C# mit Conholdate.Total für .NET zuschneidet.

Wir werden Sie durch zwei verschiedene Zuschneidetechniken führen, eine, die Verschiebewerte verwendet, um das Bild von allen Seiten zu trimmen, und eine andere, die es ermöglicht, ein benutzerdefiniertes Rechteck zu definieren, um einen bestimmten Bereich des Bildes zu isolieren. Jeder Abschnitt enthält gut dokumentierte Code-Snippets und praktische Einblicke in die Anwendungen der realen Welt.

Warum Bilder programmatisch in C# zuschneiden?

Es gibt mehrere Szenarien, in denen das programmgesteuerte Zuschneiden von Bildern vorteilhaft ist:

  • Fokussieren Sie auf den Inhalt: Zuschneiden ermöglicht es Ihnen, einen bestimmten Teil eines Bildes hervorzuheben, was es ideal für Profilfotos, Miniaturansichten oder Dokumentenscans macht.

  • Automatisierte Bildbearbeitung: In Anwendungen, die Massengrabung oder von Benutzern hochgeladene Inhalte betreffen, optimiert die Automatisierung des Zuschneideprozesses die Arbeitsabläufe und beseitigt manuelle Anstrengungen.

  • Compliance und Datenschutz: Das Beschneiden kann verwendet werden, um sensible oder irrelevante Daten vor dem Teilen von Bildern zu entfernen.

Zuschneiden ist nicht nur eine ästhetische Anpassung, es ist ein wesentlicher Teil der Datenverarbeitung, des UX-Designs und der Systemleistung.

Crop JPG PNG BMP Images - .NET API Konfiguration

Sie können Conholdate.Total for .NET einfach mit dem folgenden NuGet-Installationsbefehl einrichten:

Install-Package Conholdate.Total

Bilde zuschneiden durch Verschieben der Seiten in C#

Die erste Methode zeigt, wie man ein Bild zuschneidet, indem man seine Ränder nach innen verschiebt. Dies ist besonders nützlich, wenn Sie die Ränder gleichmäßig oder asymmetrisch von der oberen, unteren, linken und rechten Seite des Bildes trimmen möchten.

// Load the image to be cropped.
using (RasterImage rasterImage = (RasterImage)Image.Load("image.png"))
{
    // Before cropping, the image should be cached for better performance.
    if (!rasterImage.IsCached)
    {
        rasterImage.CacheData();
    }

    // Define shift values for all four sides.
    int leftShift = 10;
    int rightShift = 10;
    int topShift = 50;
    int bottomShift = 50;

    // Based on the shift values, apply the cropping on image. Crop method will shift the image bounds toward the center of image.
    rasterImage.Crop(leftShift, rightShift, topShift, bottomShift);

    // Save cropped image.
    rasterImage.Save("cropped.png");
}

In diesem Beispiel laden wir ein PNG bild und geben die Anzahl der Pixel an, die von jeder Seite entfernt werden sollen. Die Crop-Methode passt die Abmessungen des Bildes bequem nach innen an, beseitigt unnötige Ränder und bewahrt dabei die Integrität des Bildes. Mit dieser Methode können Sie ein konsistentes, randbasiertes Zuschneiden erzielen, das sich ideal für gescannte Dokumente, Bildschirmaufnahmen und Bildränder eignet.

Bilder mit einem definierten Rechteck in C# zuschneiden

Die zweite Methode bietet eine höhere Präzision, indem sie es Ihnen ermöglicht, den genauen Bereich, den Sie beibehalten möchten, mithilfe einer rechteckigen Grenze zu definieren. Dieser Ansatz ist ideal, wenn Sie die Koordinaten und die Größe des gewünschten Bereichs im Bild kennen.

// Load the image.
using (RasterImage rasterImage = (RasterImage)Image.Load("image.png"))
{
    // Before cropping, the image should be cached for better performance.
    if (!rasterImage.IsCached)
    {
        rasterImage.CacheData();
    }

    // Create an instance of Rectangle class with desired size and crop the image.
    Rectangle rectangle = new Rectangle(20, 20, 20, 20);
    rasterImage.Crop(rectangle);

    // Save cropped image.
    rasterImage.Save("cropped.png");
}

Diese Methode ist besonders nützlich, wenn Sie einen bestimmten Abschnitt eines Bildes isolieren müssen, z. B. einen Produktbereich in einem E-Commerce-Foto, einen Textblock aus einem gescannten Dokument oder einen relevanten Bereich in einem Diagramm. Das Definieren und Anwenden eines solchen Rechtecks ist sowohl intuitiv als auch äußerst effizient.

Kostenlose Evaluierungslizenz

Sie können eine freie temporäre Lizenz erhalten, um viele andere Funktionen zu bewerten, die von der API in vollem Umfang angeboten werden.

Schlussfolgerung

Das Zuschneiden von Bildern in C# muss nicht kompliziert sein. Egal, ob Sie Ränder trimmen oder eine bestimmte Region extrahieren müssen, Sie können die Aufgabe schnell und genau erledigen. Mit der Unterstützung für sowohl verschiebungsbasiertes als auch rechteckbasiertes Zuschneiden haben Sie die Flexibilität, eine Vielzahl von Anwendungsfällen aus der realen Welt zu adressieren, von der Dokumentenbildgebung bis zur Inhaltsanpassung.

Durch die Integration dieser Funktionen in Ihre .NET-Anwendungen können Sie Bildbearbeitungsaufgaben automatisieren, die Benutzererfahrung verbessern und eine konsistente Formatierung über große Datensätze hinweg aufrechterhalten.

Siehe auch