Ajouter une légende à l’image en C# | Légendes des photos | Légendes d'images

Une légende d’image est un élément graphique qui permet d’attirer l’attention sur des parties spécifiques d’une image ou d’une photo. Les légendes sont une arme secrète pour rendre tout contenu visuel plus clair et plus percutant. Considérez-les comme de minuscules projecteurs éclairant les parties les plus importantes de votre image. Dans cet article, nous apprendrons comment ajouter des légendes aux images en C#.

Cet article couvre les sujets suivants :

  1. Que sont les légendes d’image
  2. API C# pour ajouter des légendes d’image
  3. Comment ajouter des légendes aux images en C#
  4. Ressources gratuites

Que sont les légendes d’image ?

Les légendes d’image sont des étiquettes informatives superposées à une image pour attirer l’attention sur des parties spécifiques et expliquer leur signification. Les légendes d’images peuvent se présenter sous la forme de lignes de repère ou de flèches, reliant visuellement le texte de la légende aux zones en surbrillance des images. Il peut s’agir de zones de texte de légende, contenant une brève explication ou une identification des éléments signalés.

Les légendes d’image sont couramment utilisées dans :

  • Documents techniques et tutoriels : pour souligner des caractéristiques ou des fonctionnalités spécifiques dans des captures d’écran ou des diagrammes.
  • Présentations : pour mettre en valeur les éléments clés d’une image.
  • Matériel pédagogique : Pour étiqueter des parties d’une illustration ou d’un graphique.

API C# pour ajouter des légendes d’image

Pour ajouter des légendes d’image par programme en C#, nous utiliserons l’API Aspose.Drawing for .NET. Il s’agit d’une bibliothèque graphique 2D multiplateforme permettant de dessiner du texte, des géométries et des images par programme. Il fournit la fonctionnalité nécessaire pour créer et ajouter des légendes à vos images.

Veuillez soit télécharger la DLL de l’API, soit l’installer à l’aide de NuGet.

PM> Install-Package Aspose.Drawing

Comment ajouter des légendes aux images en C#

Nous pouvons facilement ajouter des légendes aux images par programme en suivant les étapes ci-dessous :

  1. Chargez l’image à l’aide de la méthode Image.FromFile().
  2. Créez un nouvel objet Graphics à l’aide de la méthode FromImage().
  3. Initialisez un objet de classe Pen avec la couleur et la taille spécifiées pour dessiner les légendes.
  4. Définissez la position d’un élément de légende avec la couleur et la taille spécifiées.
  5. Après cela, écrivez le texte en utilisant la méthode DrawString().
  6. Enfin, enregistrez l’image de sortie à l’aide de la méthode Save().

L’exemple de code suivant montre comment ajouter des légendes à l’image en C#.

using System.Drawing;
using System.Drawing.AsposeDrawing;
using System.Drawing.Imaging;
using System.Drawing.Text;

using (var image = Image.FromFile("gears.png"))
{
    var graphics = Graphics.FromImage(image);

    graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;
    graphics.PageUnit = GraphicsUnit.Pixel;

    DrawCallOut(graphics, new PointF(107, 55), new PointF(179, 5), 74, "mm");

    DrawCallOut(graphics, new PointF(111, 146), new PointF(29, 180), 28, "mm");

    image.Save("gears_with_callout.jpg");
}


void DrawCallOut(Graphics graphic, PointF startAnchor, PointF endAnchor, int value, string unit)
{
    Pen pen = new Pen(Color.Red, 1);

    Font font = new Font("Arial", 10, FontStyle.Bold);

    string outputValue = $"{value} {unit}";

    var textSize = graphic.MeasureString(outputValue, font);

    int diameterSymbolSize = 12;
    int spaceSize = 3;

    textSize.Width += diameterSymbolSize + spaceSize;

    float callOutMiddleX = endAnchor.X > startAnchor.X ? endAnchor.X - textSize.Width : endAnchor.X + textSize.Width;
    float callOutMiddleY = endAnchor.Y > startAnchor.Y ? endAnchor.Y - textSize.Height : endAnchor.Y + textSize.Height;

    graphic.DrawLine(pen, startAnchor.X, startAnchor.Y, callOutMiddleX, callOutMiddleY);

    float textAnchorX = Math.Min(callOutMiddleX, endAnchor.X);
    float textAnchorY = callOutMiddleY;
    graphic.DrawLine(pen, callOutMiddleX, callOutMiddleY,
                        textAnchorX == callOutMiddleX ? textAnchorX + textSize.Width : textAnchorX,
                        callOutMiddleY);

    graphic.DrawEllipse(pen, new Rectangle((int)textAnchorX + spaceSize,
                                            (int)(textAnchorY - textSize.Height) + spaceSize, 10, 10));

    graphic.DrawLine(pen, (int)textAnchorX + 1, (int)textAnchorY - 1,
                            (int)textAnchorX + diameterSymbolSize + 2,
                            (int)textAnchorY - diameterSymbolSize - 2);

    SolidBrush brush = new SolidBrush(Color.Blue);

    graphic.DrawString(outputValue, font, brush, (int)textAnchorX + diameterSymbolSize + spaceSize,
                                                    (int)(textAnchorY - textSize.Height));
}
Ajouter des légendes aux images en C#

Ajouter des légendes aux images en C#

Obtenez une licence gratuite

Vous pouvez obtenir une licence temporaire gratuite pour essayer Aspose.Drawing for .NET sans limitations d’évaluation.

Légendes des photos – Ressources gratuites

En plus d’ajouter des légendes aux photos et aux images, vous pouvez explorer diverses autres fonctionnalités de la bibliothèque à l’aide des ressources ci-dessous :

Conclusion

Dans cet article, nous avons appris comment ajouter des légendes aux images et aux photos par programmation en C#. L’ajout de légendes aux images peut être un moyen simple mais efficace d’améliorer l’attrait visuel et la convivialité de votre contenu. En suivant les étapes décrites et en utilisant l’exemple de code fourni, vous pouvez facilement attirer l’attention sur les éléments clés de vos images. En cas d’ambiguïté, n’hésitez pas à nous contacter sur notre forum d’assistance gratuit.

Voir également