Aspose.Drawing'de Açıklamalar Yapma
giriiş
Aspose.Drawing for .NET’te belirtme çizgileri oluşturmaya ilişkin adım adım kılavuzumuza hoş geldiniz! Belge çizimlerinizi belirtme çizgileriyle geliştirmek istiyorsanız doğru yerdesiniz. Bu eğitimde Aspose.Drawing kütüphanesini kullanarak süreci yönetilebilir adımlara ayıracağız.
Önkoşullar
Eğiticiye dalmadan önce aşağıdaki önkoşullara sahip olduğunuzdan emin olun:
- Temel C# programlama dili bilgisi.
- Aspose.Drawing kütüphanesi kuruldu. İndirebilirsinBurada.
- Açıklama eklemek istediğiniz bir belge veya resim.
Ad Alanlarını İçe Aktar
Projenizde gerekli ad alanlarının bulunduğundan emin olun:
using System.Text;
using System.Threading.Tasks;
using System;
using System.Drawing;
using System.Drawing.Text;
using System.IO;
1. Adım: Görüntüyü Yükleyin
Açıklama eklemek istediğiniz görseli yükleyerek başlayın. Yer değiştirmek"Your Document Directory"
Ve"gears.png"
gerçek dizininiz ve resim dosya adınızla birlikte.
using (var image = Image.FromFile(Path.Combine("Your Document Directory", "gears.png")))
{
// Kodunuz burada
}
Adım 2: Grafik Nesnesi Oluşturun
OluşturmakGraphics
Çizim işlemlerini gerçekleştirmek için görüntüdeki nesneyi seçin.
var graphics = Graphics.FromImage(image);
graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;
graphics.PageUnit = GraphicsUnit.Pixel;
3. Adım: Belirtme Bilgisi Konumlarını Tanımlayın
Bilgi değeri ve birimiyle birlikte her bilgi için başlangıç ve bitiş noktalarını tanımlayın.
PointF startAnchor1 = new PointF(107, 55);
PointF endAnchor1 = new PointF(179, 5);
int value1 = 74;
string unit1 = "mm";
PointF startAnchor2 = new PointF(111, 146);
PointF endAnchor2 = new PointF(29, 180);
int value2 = 28;
string unit2 = "mm";
Adım 4: Açıklamaları Çizin
UygulamakDrawCallOut
Görüntünün üzerine belirtme çizgileri çizme yöntemi.
DrawCallOut(graphics, startAnchor1, endAnchor1, value1, unit1);
DrawCallOut(graphics, startAnchor2, endAnchor2, value2, unit2);
Adım 5: Görüntüyü Kaydedin
Görüntüyü belirtme çizgileriyle birlikte istediğiniz dizine kaydedin.
image.Save(Path.Combine("Your Document Directory", "gears_with_callout_out.png"));
Ek Bilgi Kaynak Kodunu Çiz
void DrawCallOut(Graphics graphic, PointF startAnchor, PointF endAnchor, int value, string unit)
{
Pen pen = new Pen(Color.DarkGray, 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.DarkGray);
graphic.DrawString(outputValue, font, brush, (int)textAnchorX + diameterSymbolSize + spaceSize, (int)(textAnchorY - textSize.Height));
}
Çözüm
Tebrikler! Aspose.Drawing for .NET’i kullanarak görüntünüze başarıyla belirtme çizgileri eklediniz. Açıklamalarınızı daha da özelleştirmek için farklı konumlar ve değerlerle denemeler yapmaktan çekinmeyin.
SSS
Aspose.Drawing’i diğer illüstrasyon türleri için kullanabilir miyim?
Evet, Aspose.Drawing, çeşitli illüstrasyon türleri için çok çeşitli çizim işlemlerini destekler.
Aspose.Drawing farklı resim formatlarıyla uyumlu mu?
Kesinlikle! Aspose.Drawing PNG, JPEG, GIF ve daha fazlası gibi popüler görüntü formatlarını destekler.
Daha fazla örnek ve belgeyi nerede bulabilirim?
Kapsamlı belgeleri keşfedinBurada.
Sorunla karşılaşırsam nasıl destek alabilirim?
Ziyaret edinAspose.Çizim forumu topluluk desteği için.
Satın almadan önce Aspose.Drawing’i deneyebilir miyim?
Kesinlikle! Ücretsiz denemeyle başlayınBurada.