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