1. Produkte
  2.   Bild
  3.   .NET
  4.   ImageProcessor  
 
  

Open Source C# .NET Library for Images Manipulation

Lesen, Write, Modify, Resize & Convert NG, JPEG, GIF & TIFF Images on-the-Fly via Free .NET API.

ImageProcessor ist eine freie Open Source .NET Bildbearbeitungsbibliothek, die es Programmierern ermöglicht, Bilder on-the-fly in ihre eigenen .NET-Anwendungen zu manipulieren. Die Bibliothek ist sehr schnell, stabil, umfangreich, benutzerfreundlich und enthält großartige Funktionen. Die Bibliothek bietet volle Unterstützung für die Arbeit mit JPG, JPEG, NG, GIF, NG8 (animierte und statische), BMP und TIFF Dateiformaten.

Die Bibliothek ist hauptsächlich in zwei Unterbibliotheken aufgeteilt. Die erste Bibliothek ist als ImageProcessor bekannt und bietet volle Unterstützung für die Arbeit mit Desktop und Anwendungen. Die 2. Bibliothek ImageProcessor.Web ist für SP.NET gebaut und bietet volle Unterstützung für die Arbeit mit Webanwendungen. Wir werden hauptsächlich über den ersten Teil diskutieren und wie Entwickler ihn in ihren Anwendungen einsetzen können.

Previous Next

Getting Start mit ImageProcessor

Eine stabile Version ist auf NuGet verfügbar. ImageProcessor wird und wird immer nur von .NET Framework unterstützt, das auf einem Windows-Betriebssystem ausgeführt wird. Bitte versuchen Sie nicht, es mit .NET Core oder NET 5+ zu verwenden.

ImageProcessor via NuGet

NuGet\Install-Package ImageProcessor -Version number 

Legen Sie Bilder über C# Library an.

Die Open Source ImageProcessor Bibliothek erlaubt es C# .NET Entwicklern, Bilder einfach innerhalb ihrer eigenen Anwendungen zu filtern. Bitte benutzen Sie die MatrixFilters Klasse, um Ihren Bildern den richtigen Filter zuzuweisen. Es gibt verschiedene Arten von Filtern für Ihre Bilder, wie BlackWhite, Comic, Gotham, GreyScale, HiSatch, Invert, Monograph, LoSatch, Polaroid und Seria.

Fügen Sie Textbasiertes Wasserzeichen hinzu.

Sie können mit der Open Source ImageProcessor-Bibliothek ganz einfach ein Bild oder Text-Wasserzeichen überall auf Ihren Bildern platzieren. Die Bibliothek bietet volle Unterstützung für das Hinzufügen von Wasserzeichen zu Bildern mit nur wenigen Codezeilen. Die benötigte Klasse enthält alle Eigenschaften, die notwendig sind, um das textbasierte Wasserzeichen dem Bild hinzuzufügen. Es unterstützt Textfarbe, Auswahl von Schriftgröße, Stil, Deckkraft, Position, Drop-Schatten und vieles mehr.

Krümmung von Bildern mit .NET

Die ImageProcessor gibt Software-Entwicklern die Möglichkeit, das aktuelle Bild an eine eigene Position und Größe anzuhängen. Das Abbrechen ist der wichtigste und einfachste Prozess, der bei der Bearbeitung von Bildern und Fotos in Betracht gezogen werden kann. Es stellt mehrere Eigenschaften zur Verfügung, die Benutzern helfen, Bilder nach ihren Bedürfnissen zu schneiden. Wie links, oben, rechts, unten und CropMode.

Crop Images mit C# .NET


namespace ImageProcessor.Tests.Processing
{
    public class CropTests
    {
        private const string category = "Crop";
        [Fact]
        public void CropSettingsConstructorSetsOptions()
        {
            const int Left = 1;
            const int Top = 1;
            const int Right = 1;
            const int Bottom = 1;
            var expected = new CropOptions(Left, Top, Right, Bottom, CropMode.Percentage);
            Assert.Equal(expected.Left, Left);
            Assert.Equal(expected.Top, Top);
            Assert.Equal(expected.Right, Right);
            Assert.Equal(expected.Bottom, Bottom);
        }
        [Fact]
        public void CropSettingsConstructorChecksInput()
        {
            Assert.Throws(() => new CropOptions(-1, 0, 0, 0));
            Assert.Throws(() => new CropOptions(0, -1, 0, 0));
            Assert.Throws(() => new CropOptions(0, 0, -1, 0));
            Assert.Throws(() => new CropOptions(0, 0, 0, -1));
        }
        [Fact]
        public void CropConstructorSetsOptions()
        {
            var expected = new CropOptions(1, 2, 3, 4, CropMode.Percentage);
            var processor = new Crop(expected);
            Assert.Equal(expected, processor.Options);
        }
        [Fact]
        public void FactoryCanCropRectangle()
        {
            // Test our issue crop.
            TestFile file = TestFiles.Jpeg.EXIFCropIssue559;
            var bounds = new Rectangle(939, 439, 2778, 2778);
            using (var factory = new ImageFactory())
            {
                factory.Load(file.FullName)
                       .Crop(bounds)
                       .SaveAndCompare(file, category, bounds);
            }
        }
        [Fact]
        public void FactoryCanCropPercentile()
        {
            // Test our issue crop.
            TestFile file = TestFiles.Jpeg.Penguins;
            var settings = new CropOptions(15, 25, 10, 5, CropMode.Percentage);
            using (var factory = new ImageFactory())
            {
                factory.Load(file.FullName)
                       .Crop(settings)
                       .SaveAndCompare(file, category, settings);
            }
        }
    }
}            
 Deutsch