1. Prodotti
  2.   Immagine
  3.   .NET
  4.   ImageProcessor  
 
  

Open Source C.NET Library for Images Manipulation

Leggi, scrivi, modifica, Ridimensiona e Converti NG, JPEG, GIF & TIFF Immagini on-the-Fly via Free .NET API.

ImageProcessor è una libreria libera di elaborazione delle immagini .NET che consente ai programmatori di computer di manipolare le immagini in volo all'interno delle proprie applicazioni .NET. La biblioteca è molto veloce, stabile, ampia, facile da usare e contiene grandi caratteristiche. La libreria fornisce il supporto completo per lavorare con JPG, JPEG, NG, GIF, NG8 (animati e statici), BMP e formati di file TIFF.

La biblioteca è suddivisa principalmente in due sotto-biblioteche. La prima libreria è conosciuta come ImageProcessor e fornisce supporti completi per lavorare con desktop e applicazioni. La seconda libreria ImageProcessor.Web è costruita per SP.NET e fornisce il pieno supporto per lavorare con applicazioni web. Parleremo principalmente della prima parte e di come gli sviluppatori possono utilizzarla all'interno delle loro applicazioni.

Previous Next

Iniziare con ImageProcessor

Una versione stabile è disponibile su NuGet. ImageProcessor è e sarà supportato solo su .NET Framework in esecuzione su un sistema operativo Windows. Si prega di non tentare di utilizzare con .NET Core o NET 5+.

Installare ImageProcessor via NuGet

NuGet\Install-Package ImageProcessor -Version number 

Applicare filtri alle immagini tramite Biblioteca C

La libreria open source ImageProcessor consente allo sviluppatore C.NET di filtrare le immagini con facilità all'interno delle proprie applicazioni. Si prega di utilizzare la classe MatrixFilters per assegnare il filtro corretto alle immagini. Ci sono diversi tipi di filtri disponibili che puoi applicare alle tue immagini, come BlackWhite, Comic, Gotham, GreyScale, HiSatch, Invert, Monograph, LoSatch, Polaroid e Seria.

Aggiungi filigrana basata su testo a immagine

È possibile posizionare facilmente un'immagine o una filigrana di testo ovunque sulle immagini utilizzando la libreria open source ImageProcessor. La biblioteca fornisce il pieno supporto per l'aggiunta di filigrana alle immagini con poche righe di codice. La classe richiesta contiene tutte le proprietà necessarie per aggiungere la filigrana basata sul testo all'immagine. Supporta il colore del testo, seleziona Font, Font Size, Style, opacità, posizione, drop-shadow e altro ancora.

Crop Immagini utilizzando .NET

Il ImageProcessor dà agli sviluppatori di software la capacità di colmare l'immagine attuale in una posizione e dimensioni personalizzate. Dropping è il processo più importante ma facile da considerare quando si modificano le immagini e le foto. Esso fornisce diverse proprietà che aiutano gli utenti a ritagliare le immagini in base alle loro esigenze. Come sinistra, superiore, destra, fondo e CropMode.

Crop Immagini utilizzando 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);
            }
        }
    }
}            
 Italiano