Tambahkan Callout ke Gambar di C# | Info ke Foto | Info Gambar

Info gambar adalah elemen grafis yang membantu menarik perhatian ke bagian tertentu dari gambar atau foto. Info adalah senjata rahasia untuk membuat konten visual apa pun menjadi lebih jelas dan berdampak. Anggap saja itu sebagai lampu sorot kecil yang menyinari bagian terpenting gambar Anda. Pada artikel ini, kita akan mempelajari cara menambahkan info ke gambar di C#.

Artikel ini mencakup topik-topik berikut:

  1. Apa itu Info Gambar
  2. C# API untuk Menambahkan Info Gambar
  3. Cara Menambahkan Info ke Gambar di C#
  4. Sumber Daya Gratis

Apa itu Info Gambar?

Info gambar adalah label informasi yang ditumpangkan pada gambar untuk menarik perhatian ke bagian tertentu dan menjelaskan signifikansinya. Info gambar bisa dalam bentuk garis pemimpin atau panah, yang secara visual menghubungkan teks info ke area gambar yang disorot. Ini bisa berupa kotak teks info, yang berisi penjelasan singkat atau identifikasi elemen yang ditunjukkan.

Info gambar biasanya digunakan di:

  • Dokumen teknis dan tutorial: Untuk menunjukkan fitur atau fungsi tertentu dalam tangkapan layar atau diagram.
  • Presentasi: Untuk menekankan elemen kunci dalam sebuah gambar.
  • Materi pendidikan: Untuk memberi label pada bagian ilustrasi atau grafik.

C# API untuk Menambahkan Info Gambar

Untuk menambahkan pemanggilan gambar secara terprogram di C#, kita akan menggunakan API Aspose.Drawing for .NET. Ini adalah perpustakaan grafis 2D lintas platform untuk menggambar teks, geometri, dan gambar secara terprogram. Ini menyediakan fungsionalitas untuk membuat dan menambahkan info ke gambar Anda.

Silakan unduh DLL API atau instal menggunakan NuGet.

PM> Install-Package Aspose.Drawing

Cara Menambahkan Info ke Gambar di C#

Kita dapat dengan mudah menambahkan info ke gambar secara terprogram dengan mengikuti langkah-langkah di bawah ini:

  1. Muat gambar menggunakan metode Image.FromFile().
  2. Buat objek Grafik baru menggunakan metode FromImage().
  3. Inisialisasi objek kelas Pena dengan warna dan ukuran yang ditentukan untuk menggambar info.
  4. Tentukan posisi elemen info dengan warna dan ukuran yang ditentukan.
  5. Setelah itu, tulis teks menggunakan metode DrawString().
  6. Terakhir, simpan gambar keluaran menggunakan metode Save().

Contoh kode berikut menunjukkan cara menambahkan info ke gambar di 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));
}
Tambahkan Info ke Gambar di C#

Tambahkan Info ke Gambar di C#

Dapatkan Lisensi Gratis

Anda bisa mendapatkan lisensi sementara gratis untuk mencoba Aspose.Drawing for .NET tanpa batasan evaluasi.

Info ke Foto – Sumber Daya Gratis

Selain menambahkan info ke foto dan gambar, Anda dapat menjelajahi berbagai fitur perpustakaan lainnya menggunakan sumber daya di bawah:

Kesimpulan

Dalam postingan ini, kita telah mempelajari cara menambahkan info ke gambar dan foto secara terprogram di C#. Menambahkan info ke gambar bisa menjadi cara sederhana namun efektif untuk meningkatkan daya tarik visual dan kegunaan konten Anda. Dengan mengikuti langkah-langkah yang dijelaskan dan menggunakan contoh kode yang diberikan, Anda dapat dengan mudah menarik perhatian ke elemen kunci dalam gambar Anda. Jika ada ambiguitas, jangan ragu untuk menghubungi kami di forum dukungan gratis kami.

Lihat juga