1. Produse
  2.   Imagine
  3.   .NET
  4.   ImageSharp  

ImageSharp  

 
 

Bibliotecă C# .NET open source pentru grafică 2D

Citiți, scrieți, modificați, redimensionați și convertiți imagini PNG, JPEG, GIF și TIFF folosind .NET API.

ImageSharp este o bibliotecă open source simplă, dar foarte puternică, multiplatformă, pentru procesarea fișierelor de imagine în aplicațiile C#. Este un API grafic 2D complet gestionat și multiplatformă, conceput pentru a permite procesarea imaginilor. ImageSharp este o bibliotecă de procesare a imaginilor open source care a fost lansată cu scopul de a oferi o alternativă la API-urile System.Drawing.

Acest API este cuprinzător și acceptă algoritmi avansați pentru procesarea imaginilor. API-ul este îmbunătățit an de an pentru a oferi suport pentru procesarea mai avansată a imaginilor. Singura sa dependență este .NET în sine, ceea ce îl face extrem de portabil. API-ul a inclus suport pentru funcții avansate, cum ar fi redimensionarea imaginii, codificarea și decodarea imaginii, decodarea numai metadatelor imaginii, clonarea imaginii, Desenarea filigranului pe imagine, Desenarea textului de-a lungul unei căi și multe altele.

Previous Next

Noțiuni introductive cu ImageSharp

O versiune stabilă este disponibilă pe NuGet Pentru versiunile beta, asigurați-vă că comutatorul Includere versiune preliminară este activat. Versiunile de dezvoltare sunt disponibile prin MyGet.

Instalați ImageSharp prin NuGet

Install-Package SixLabors.ImageSharp -Version number 

API C# pentru a redimensiona imagini

Biblioteca ImageSharp permite programatorilor C# .NET să redimensioneze imaginile în propriile aplicații .NET. Redimensionarea unei imagini necesită procesul de generare și iterare prin pixelii unei imagini țintă și eșantionarea zonelor unei imagini sursă pentru a alege ce culoare să implementeze pentru fiecare pixel. Puteți seta cu ușurință algoritmul atunci când procesați imagini, cum ar fi Bicubic, Hermite, Box, CatmullRom, Lanczos2 și multe altele. Pe lângă operațiunile de bază de redimensionare, ImageSharp oferă și funcții mai avansate.

Redimensionați imaginile prin API-ul C#

// Load File 
using (Image image = Image.Load("fileformat.jpg"))
{
  // Resize file 
  image.Mutate(x => x
      .Resize(image.Width / 2, image.Height / 2)
      .greyscale());
  // Save
  image.Save("fileformat_out.jpg");
}                
                  

Desenați filigran pe imagine

De obicei, oamenii își protejează imaginile punând un filigran mare suprapus pentru a împiedica oamenii să folosească imaginile fără autorizație. Biblioteca ImageSharp oferă suport pentru adăugarea de filigrane la imagini în interiorul aplicațiilor C++. Pentru a începe, aveți nevoie de o familie de fonturi și puteți obține cu ușurință una din magazinul de fonturi de sistem. Desenați textul peste imagine și dați-l gri cu 50% opacitate.

Desenați textul de-a lungul unei căi și aplicați efectul imaginii

Biblioteca ImageSharp permite dezvoltatorilor C# .NET să deseneze un text urmând contururile unei căi. Se recomandă crearea unei colecții de fonturi. Mai întâi, să generăm textul ca un set de vectori desenați de-a lungul căii. După desenarea traseului, astfel încât să putem vedea ce ar trebui să urmărească textul. API-ul ImageSharp permite, de asemenea, aplicarea diferitelor tipuri de efecte imaginilor numai în interiorul unei forme.

Aplicați efect imaginilor


namespace CustomImageProcessor
{
    static class Program
    {
        static void Main(string[] args)
        {
            System.IO.Directory.CreateDirectory("output");
            using (Image image = Image.Load("fb.jpg"))
            {
                var outerRadii = Math.Min(image.Width, image.Height) / 2;
                var star = new Star(new PointF(image.Width / 2, image.Height / 2), 5, outerRadii / 2, outerRadii);
                using (var clone = image.Clone(p =>
                {
                    p.GaussianBlur(15); // apply the effect here you and inside the shape
                }))
                {
                    clone.Mutate(x => x.Crop((Rectangle)star.Bounds));
                    var brush = new ImageBrush(clone);
                    // cloned image with the effects applied
                    image.Mutate(c => c.Fill(brush, star));
                }
                image.Save("output/fb.png");
            }
        }
    }
}              
 Română