V mém předchozím článku jsem vám poskytl přehled našeho .NET Graphics API - Aspose.Drawing for .NET. Spolu s tím jsme viděli, jak vytvářet obrázky od začátku nebo kreslit grafiku na existující obrázky pomocí C#. V tomto článku půjdeme o krok napřed a naučíme se, jak vytvářet 2D kresby kreslením různých grafických objektů v aplikacích .NET, jako je webová aplikace ASP.NET, aplikace pro Windows atd.
Následuje vektorová grafika, kterou budeme kreslit v rámci našich výkresů pomocí .NET Graphics API.
- Vytvořte výkres pomocí C#
- Nakreslete oblouk ve výkresu
- Nakreslete Bezierovu křivku ve výkresu
- Nakreslete Cardinal Spline do výkresu
- Nakreslete ve výkresu uzavřenou křivku
- Nakreslete elipsu do výkresu
- Kreslit čáry v kresbě
- Nakreslete cestu do výkresu
- Nakreslete mnohoúhelník do výkresu
- Nakreslete obdélník ve výkresu
Než začneme, ujistěte se, že jste nainstalovali Aspose.Drawing for .NET v rámci vaší .NET aplikace. O metodách instalace si můžete přečíst v tomto příspěvku.
Vytvořte kresbu od nuly pomocí C#
Nejprve se podívejme, jak vytvořit prázdný výkres a uložit jej jako obrázek PNG. Kroky jsou jednoduché jako facka.
- Vytvořte nový objekt Bitmap.
- Uložte výkres ve formátu PNG pomocí metody Bitmap.Save(string).
Kresbu můžete uložit také v jiné formáty obrázků. Následující ukázka kódu ukazuje, jak vytvořit výkres od začátku pomocí C#.
// Příklad vytvoření nového výkresu v C# .NET a vykreslení jako PNG.
// Další příklady najdete na https://github.com/aspose-drawing/Aspose.Drawing-for-.NET a https://docs.aspose.com/drawing/net/.
// Vytvořte nový výkres
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
// Uložit výkres
bitmap.Save(RunExamples.GetDataDir() + @"drawing.png");
Nakreslete oblouk v kreslení pomocí C#
Pojďme se podívat, jak nakreslit oblouk ve výkresu. Následují kroky k provedení této operace.
- Definujte instanci třídy Bitmap.
- Inicializujte objekt třídy Graphics z objektu Bitmap.
- Vytvořte objekt Pen, kterým nakreslíte oblouk.
- K nakreslení oblouku použijte metodu Graphics.DrawArc(Pen, Single, Single, Single, Single, Single, Single).
- Uložte kresbu jako obrázek pomocí metody Bitmap.Save(string).
Následující ukázka kódu ukazuje, jak nakreslit oblouk ve výkresu pomocí C#.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
graphics.DrawArc(pen, 0, 0, 700, 700, 0, 180);
bitmap.Save("DrawArc.png");
Nakreslete Bezierovu spline v kreslení pomocí C#
Následují kroky pro nakreslení Bézierovy spline ve výkresu.
- Vytvořte objekt třídy Bitmap.
- Inicializujte objekt třídy Graphics z objektu Bitmap.
- Vytvořte objekt Pen pro kreslení grafiky.
- Pomocí metody Graphics.DrawBezier(Pen, PointF, PointF, PointF, PointF) nakreslete Bezierovu křivku.
- Uložte výkres pomocí metody Bitmap.Save(string).
Následující ukázka kódu vytvoří Bezier Spline pomocí C#.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
PointF p1 = new PointF(0, 0); // start point
PointF c1 = new PointF(0, 800); // first control point
PointF c2 = new PointF(1000, 0); // second control point
PointF p2 = new PointF(1000, 800); // end point
graphics.DrawBezier(pen, p1, c1, c2, p2);
bitmap.Save("DrawBezierSpline.png");
Přidejte Cardinal Spline do kreslení pomocí C#
Pomocí následujících kroků nakreslete kardinální spline pomocí našeho rozhraní .NET Graphics API.
- Vytvořte instanci objektu třídy Bitmap.
- Vytvořte objekt třídy Graphics z objektu Bitmap.
- Vytvořte objekt Pen pro kreslení.
- Nakreslete hlavní spline pomocí metody Graphics.DrawCurve(Pen,Point[]).
- Uložte výkres jako obrázek pomocí metody Bitmap.Save(string).
Následující ukázka kódu C# nakreslí kardinální spline pomocí Aspose.Drawing for .NET.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
graphics.DrawCurve(pen, new Point[] { new Point(10, 700), new Point(250, 500), new Point(500, 10), new Point(750, 500), new Point(990, 700) });
bitmap.Save("DrawCardinalSpline.png");
Přidejte uzavřenou křivku do kreslení pomocí C#
Můžete také nakreslit uzavřenou křivku stejným způsobem, jakým jste nakreslili ostatní grafické objekty. K tomu jsou uvedeny následující kroky.
- Vytvořte instanci objektu Bitmap.
- Vytvořte objekt třídy Graphics a inicializujte jej z objektu Bitmap.
- Vytvořte objekt Pen pro kreslení uzavřené křivky.
- Nakreslete uzavřenou křivku pomocí metody Graphics.DrawClosedCurve(Pen,Point[]).
- Uložte výkres pomocí metody Bitmap.Save(string).
Uzavřenou křivku můžete nakreslit pomocí následující ukázky kódu C#.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
graphics.DrawClosedCurve(pen, new Point[] { new Point(100, 700), new Point(350, 600), new Point(500, 500), new Point(650, 600), new Point(900, 700) });
bitmap.Save("DrawClosedCurve.png");
Nakreslete elipsu do výkresu pomocí C#
Následují kroky pro nakreslení elipsy ve výkresu pomocí Aspose.Drawing for .NET.
- Vytvořte instanci třídy Bitmap.
- Definujte instanci třídy Graphics a inicializujte ji z objektu Bitmap.
- Pomocí objektu Pen nakreslete elipsu.
- Nakreslete elipsu pomocí metody Graphics.DrawEllipse(Pen, Single, Single, Single, Single).
- Uložte kresbu jako obrázek pomocí metody Bitmap.Save(string).
Následující ukázka kódu ukazuje, jak nakreslit elipsu pomocí C#.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
graphics.DrawEllipse(pen, 10, 10, 900, 700);
bitmap.Save("DrawEllipse.png");
Kreslení čar ve výkresu pomocí C#
Čáry jsou jedním ze základních objektů pro tvorbu výkresů. Následují kroky pro kreslení čar ve výkresu pomocí Aspose’ Graphics API.
- Vytvořte instanci objektu Bitmap.
- Vytvořte nový objekt Graphics a inicializujte jej z objektu Bitmap.
- Definujte objekt Pen pro kreslení čáry.
- Nakreslete čáru pomocí metody Graphics.DrawLine(Pen, Int32, Int32, Int32, Int32).
- Uložte výkres pomocí metody Bitmap.Save(string).
Následující ukázka kódu ukazuje, jak nakreslit čáry ve výkresu pomocí jazyka C#.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
graphics.DrawLine(pen, 10, 700, 500, 10);
graphics.DrawLine(pen, 500, 10, 990, 700);
bitmap.Save("DrawLines.png");
Nakreslete cestu do výkresu pomocí C#
Následují kroky pro nakreslení cesty ve výkresu pomocí C#.
- Vytvořte instanci objektu Bitmap.
- Vytvořte objekt třídy Graphics a inicializujte jej z objektu Bitmap.
- Definujte objekt Pen pro nakreslení cesty.
- Vytvořte instanci třídy GraphicsPath.
- Přidejte grafiku do kolekce cest.
- Nakreslete cestu pomocí metody Graphics.DrawPath(Pen, GraphicsPath).
- Uložte výkres pomocí metody Bitmap.Save(string).
Následující ukázka kódu ukazuje, jak nakreslit cestu ve výkresu pomocí jazyka C#.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
using System.Drawing.Drawing2D;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
GraphicsPath path = new GraphicsPath();
path.AddLine(100, 100, 1000, 400);
path.AddLine(1000, 600, 300, 600);
path.AddRectangle(new Rectangle(500, 350, 200, 400));
path.AddEllipse(10, 250, 450, 300);
graphics.DrawPath(pen, path);
bitmap.Save("DrawPath.png");
Nakreslete mnohoúhelník do výkresu pomocí C#
Následují kroky pro kreslení mnohoúhelníku ve výkresu pomocí Aspose.Drawing for .NET.
- Vytvořte instanci objektu Bitmap.
- Definujte objekt Graphics a inicializujte jej z objektu Bitmap.
- Definujte objekt Pen pro kreslení polygonu.
- Nakreslete mnohoúhelník pomocí metody Graphics.DrawPolygon(Pen,Point[]).
- Uložte výkres pomocí metody Bitmap.Save(string).
Takto můžete nakreslit polygon ve výkresu pomocí C#.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
graphics.DrawPolygon(pen, new Point[] { new Point(100, 100), new Point(500, 700), new Point(900, 100) });
bitmap.Save("DrawPolygon.png");
Nakreslete obdélník do výkresu pomocí C#
V neposlední řadě kreslení obdélníku. Následují kroky k nakreslení obdélníku.
- Vytvořte objekt Bitmap.
- Vytvořte objekt Graphics a inicializujte jej z objektu Bitmap.
- Definujte objekt Pen pro nakreslení obdélníku.
- Nakreslete obdélník pomocí metody Graphics.DrawRectangle(Pen, Int32, Int32, Int32, Int32).
- Uložte výkres pomocí metody Bitmap.Save(string).
Následující ukázka kódu C# nakreslí ve výkresu obdélník.
// Úplné příklady a datové soubory najdete na https://github.com/aspose-drawing/Aspose.Drawing-for-.NET
using System.Drawing;
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
graphics.DrawRectangle(pen, 10, 10, 900, 700);
bitmap.Save("DrawRectangle.png");
Závěr
V tomto článku jsme viděli, jak lze různé grafické objekty kreslit v rámci výkresu programově pomocí C#. Průvodce krok za krokem a ukázky kódu demonstrovaly, jak ve výkresech kreslit čáry, obdélníky, mnohoúhelníky, oblouky, Bézierovy spline, kardinální spline, křivky a elipsy. Více o našem .NET Graphics API se můžete dozvědět pomocí dokumentace.