![](https://products-qa.fileformat.com/fr/image/net/imagesharp/header-image.png)
ImageSharp
Bibliothèque Open Source C# .NET pour les graphiques 2D
Lire, écrire, modifier, redimensionner et convertir des images PNG, JPEG, GIF et TIFF à l'aide de l'API .NET.
ImageSharp est une bibliothèque open source multiplateforme simple mais très puissante pour le traitement des fichiers image dans les applications C#. Il s'agit d'une API graphique 2D entièrement gérée et multiplateforme conçue pour permettre le traitement des images. ImageSharp est une bibliothèque de traitement d'image open source qui a été publiée dans le but de fournir une alternative aux API System.Drawing.
Cette API est complète et prend en charge des algorithmes avancés pour le traitement d'image. L'API est améliorée d'année en année pour fournir un support pour un traitement d'image plus avancé. Sa seule dépendance est .NET lui-même, ce qui le rend extrêmement portable. L'API a inclus la prise en charge de fonctionnalités avancées telles que le redimensionnement d'image, l'encodage et le décodage d'image, le décodage des métadonnées d'image uniquement, le clonage d'image, le dessin d'un filigrane sur l'image, le dessin de texte le long d'un chemin, etc.
Premiers pas avec ImageSharp
Une version stable est disponible sur NuGet. Pour les versions bêta, assurez-vous que le commutateur Inclure la version préliminaire est activé. Les versions de développement sont disponibles via MyGet.
Installations ImageSharp par NuGet
Install-Package SixLabors.ImageSharp -Version number
API C# pour redimensionner les images
La bibliothèque ImageSharp permet aux programmeurs C# .NET de redimensionner les images dans leurs propres applications .NET. Le redimensionnement d'une image nécessite le processus de génération et d'itération à travers les pixels d'une image cible et les zones d'échantillonnage d'une image source pour choisir la couleur à implémenter pour chaque pixel. Vous pouvez facilement définir l'algorithme lors du traitement d'images, telles que Bicubic, Hermite, Box, CatmullRom, Lanczos2, etc. Outre les opérations de redimensionnement de base, ImageSharp propose également des fonctionnalités plus avancées.
Restez les images par 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");
}
Dessiner un filigrane sur l'image
Habituellement, les gens protègent leurs images en mettant un grand filigrane superposé pour empêcher les gens d'utiliser les images sans autorisation. La bibliothèque ImageSharp prend en charge l'ajout de filigranes aux images dans les applications C++. Pour commencer, vous avez besoin d'une famille de polices et vous pouvez facilement en obtenir une dans le magasin de polices du système. Dessinez le texte sur l'image et grisez-le avec une opacité de 50 %.
Texte de tirage sur une voie Appliquer l'effet de l'image
La bibliothèque ImageSharp permet aux développeurs de C.NET de rédiger un texte suivant les contours d'une voie. Il est recommandé de créer une collection de police. Tout d’abord, produisez le texte en tant qu’ensemble de vecteurs tirés sur la voie. Après avoir tracé la voie, nous pouvons voir ce que le texte est censé suivre. Les ImageSharp API permettent également d'appliquer divers types d'effets aux images seulement à l'intérieur d'une forme.
Appliquer l'effet des images
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");
}
}
}
}