Feliratok készítése Aspose.Drawingben

Bevezetés

Üdvözöljük részletes útmutatónkban az Aspose.Drawing for .NET-ben történő kiemelések készítéséhez! Ha kiemelésekkel szeretné javítani a dokumentum illusztrációit, akkor jó helyen jár. Ebben az oktatóanyagban a folyamatot az Aspose.Drawing könyvtár segítségével kezelhető lépésekre bontjuk.

Előfeltételek

Mielőtt belevágna az oktatóanyagba, győződjön meg arról, hogy rendelkezik a következő előfeltételekkel:

  • C# programozási nyelv alapismerete.
  • Aspose.Drawing könyvtár telepítve. Letöltheti itt .
  • Dokumentum vagy kép, amelyhez kiemeléseket szeretne hozzáadni.

Névterek importálása

Győződjön meg arról, hogy a szükséges névterek szerepelnek a projektben:

using System.Text;
using System.Threading.Tasks;
using System;
using System.Drawing;
using System.Drawing.Text;
using System.IO;

1. lépés: Töltse be a képet

Kezdje azzal, hogy betölti azt a képet, amelyhez kiemeléseket szeretne hozzáadni. Cserélje ki"Your Document Directory" és"gears.png" tényleges könyvtárával és képfájlnevével.

using (var image = Image.FromFile(Path.Combine("Your Document Directory", "gears.png")))
{
    // Itt a kódod
}

2. lépés: Grafikai objektum létrehozása

Hozzon létre egyGraphics objektumot a képből a rajzi műveletek végrehajtásához.

var graphics = Graphics.FromImage(image);
graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;
graphics.PageUnit = GraphicsUnit.Pixel;

3. lépés: Határozza meg a kiemelések pozícióit

Határozza meg az egyes kiemelések kezdő- és végpontját, valamint a felirat értékét és mértékegységét.

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";

4. lépés: Rajzolj feliratokat

Végezze el aDrawCallOut módszer, amellyel feliratokat rajzolhat a képre.

DrawCallOut(graphics, startAnchor1, endAnchor1, value1, unit1);
DrawCallOut(graphics, startAnchor2, endAnchor2, value2, unit2);

5. lépés: Mentse el a képet

Mentse el a képet a feliratokkal a kívánt könyvtárba.

image.Save(Path.Combine("Your Document Directory", "gears_with_callout_out.png"));

Rajzolja meg a kiemelés forráskódját

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));
            }

Következtetés

Gratulálunk! Sikeresen hozzáadott kiemeléseket a képéhez az Aspose.Drawing for .NET segítségével. Nyugodtan kísérletezzen különböző pozíciókkal és értékekkel, hogy tovább testreszabhassa kiemeléseit.

GYIK

Használhatom az Aspose.Drawing programot más típusú illusztrációkhoz?

Igen, az Aspose.Drawing a rajzolási műveletek széles skáláját támogatja különféle típusú illusztrációkhoz.

Az Aspose.Drawing kompatibilis a különböző képformátumokkal?

Teljesen! Az Aspose.Drawing olyan népszerű képformátumokat támogat, mint a PNG, JPEG, GIF stb.

Hol találok további példákat és dokumentációt?

Tekintse meg az átfogó dokumentációt itt .

Hogyan kaphatok támogatást, ha problémákba ütközöm?

Meglátogatni a Aspose.Rajz fórum közösségi támogatásért.

Vásárlás előtt kipróbálhatom az Aspose.Drawing programot?

Biztosan! Kezdje el egy ingyenes próbaverzióval itt .