1. Produtos
  2.   Imagem
  3.   .NET
  4.   ImageSharp  

ImageSharp  

 
 

Biblioteca C# .NET de código aberto para gráficos 2D

Leia, escreva, modifique, redimensione e converta imagens PNG, JPEG, GIF e TIFF usando a API .NET.

ImageSharp é uma biblioteca de código aberto multiplataforma simples, mas muito poderosa para o processamento de arquivos de imagem dentro de aplicativos C#. É uma API gráfica 2D totalmente gerenciada e multiplataforma projetada para permitir o processamento de imagens. ImageSharp é uma biblioteca de processamento de imagem de código aberto que foi lançada com o objetivo de fornecer uma alternativa às APIs System.Drawing.

Esta API é abrangente e suporta algoritmos avançados para processamento de imagens. A API é aprimorada ano a ano para fornecer suporte para processamento de imagem mais avançado. Sua única dependência é o próprio .NET, o que o torna extremamente portátil. A API inclui suporte para recursos avançados como redimensionamento de imagem, codificação e decodificação de imagem, decodificação de metadados de imagem apenas, clonagem de imagem, desenho de marca d'água na imagem, desenho de texto ao longo de um caminho e muito mais.

Previous Next

Introdução ao ImageSharp

Uma versão estável está disponível em NuGet Para versões beta, verifique se a opção Incluir pré-lançamento está ativada. As versões de desenvolvimento estão disponíveis via MyGet.

Instale o ImageSharp via NuGet

Install-Package SixLabors.ImageSharp -Version number 

API C# para redimensionar imagens

A biblioteca ImageSharp permite que programadores C# .NET redimensionem imagens dentro de seus próprios aplicativos .NET. O redimensionamento de uma imagem requer o processo de geração e iteração através dos pixels de uma imagem de destino e áreas de amostragem de uma imagem de origem para escolher qual cor implementar para cada pixel. Você pode definir facilmente o algoritmo ao processar imagens, como Bicubic, Hermite, Box, CatmullRom, Lanczos2 e muito mais. Além das operações básicas de redimensionamento, o ImageSharp também oferece recursos mais avançados.

Redimensionar imagens via C API

// 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");
}                
                  

Desenhar marca d'água na imagem

Normalmente, as pessoas protegem suas imagens colocando uma grande marca d'água sobreposta para evitar que as pessoas usem as imagens sem autorização. A biblioteca ImageSharp oferece suporte para adicionar marcas d'água a imagens dentro de aplicativos C++. Para começar, você precisa de uma família de fontes e pode facilmente obter uma no armazenamento de fontes do sistema. Desenhe o texto sobre a imagem e cinza com 50% de opacidade.

Desenhe o texto ao longo de um e a imagem

A biblioteca ImageSharp permite que os desenvolvedores C.NET desenhem algum texto após os contornos de um. É recomendável uma coleção de. Primeiro, vamos o texto como um conjunto de vetores desenhados ao longo do. Depois de o para que ver o que o texto deve ser seguido. O ImageSharp API também permite vários tipos de efeitos às imagens apenas dentro de uma forma.

Aplicar às imagens


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");
            }
        }
    }
}              
 Português