Додати виноску до зображення в C# | Виноски до фотографій | Виноски зображень

Виноска зображення – це графічний елемент, який допомагає привернути увагу до певних частин зображення чи фотографії. Виноски — це секретна зброя для того, щоб зробити будь-який візуальний вміст чіткішим і ефектнішим. Думайте про них як про крихітні прожектори, що освітлюють найважливіші частини вашого образу. У цій статті ми дізнаємося, як додавати виноски до зображень у C#.

Ця стаття охоплює такі теми:

  1. Що таке виноски зображень
  2. C# API для додавання виносок із зображеннями
  3. Як додати виноски до зображень у C#
  4. Безкоштовні ресурси

Що таке виноски зображень?

Виноски зображень – це інформаційні мітки, які накладаються на зображення, щоб привернути увагу до певних частин і пояснити їх значення. Виноски зображень можуть мати форму ліній-виносок або стрілок, які візуально з’єднують текст виноски з виділеними областями зображень. Це можуть бути текстові поля з виносками, які містять коротке пояснення або ідентифікацію виділених елементів.

Виноски зображень зазвичай використовуються в:

  • Технічні документи та навчальні посібники: щоб вказати на конкретні функції чи функції на знімках екрана чи діаграмах.
  • Презентації: підкреслити ключові елементи зображення.
  • Навчальні матеріали: Позначити частини ілюстрації або графіка.

C# API для додавання виносок до зображень

Для програмного додавання виносок зображення в C# ми будемо використовувати API Aspose.Drawing for .NET. Це кросплатформна бібліотека двовимірної графіки для програмного малювання тексту, геометрії та зображень. Він надає функціональність для створення та додавання виносок до ваших зображень.

Завантажте DLL API або встановіть його за допомогою NuGet.

PM> Install-Package Aspose.Drawing

Як додати виноски до зображень у C#

Ми можемо легко додавати виноски до зображень програмним шляхом, виконавши наведені нижче дії.

  1. Завантажте зображення за допомогою методу Image.FromFile().
  2. Створіть новий об’єкт Graphics за допомогою методу FromImage().
  3. Ініціалізуйте об’єкт класу Pen зазначеним кольором і розміром, щоб намалювати виноски.
  4. Визначте позицію виноски за допомогою вказаного кольору та розміру.
  5. Після цього напишіть текст за допомогою методу DrawString().
  6. Нарешті, збережіть вихідне зображення за допомогою методу Save().

У наведеному нижче прикладі коду показано, як додати виноски до зображення в 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));
}
Додайте виноски до зображень у C#

Додайте виноски до зображень у C#

Отримайте безкоштовну ліцензію

Ви можете отримати безкоштовну тимчасову ліцензію, щоб спробувати Aspose.Drawing for .NET без оціночних обмежень.

Виноски до фотографій – безкоштовні ресурси

Окрім додавання виносок до фотографій і зображень, ви можете досліджувати інші функції бібліотеки, використовуючи наведені нижче ресурси:

Висновок

У цій публікації ми навчилися програмно додавати виноски до зображень і фотографій у C#. Додавання виносок до зображень може бути простим, але ефективним способом підвищити візуальну привабливість і зручність використання вашого вмісту. Дотримуючись наведених кроків і використовуючи наданий приклад коду, ви можете легко привернути увагу до ключових елементів ваших зображень. У разі будь-якої неясності зв’яжіться з нами на нашому безкоштовному форумі підтримки.

Дивись також