Em meu artigo anterior, dei a você uma visão geral da nossa API de gráficos .NET - Aspose.Drawing for .NET. Junto com isso, vimos como criar imagens do zero ou desenhar gráficos em imagens existentes usando C#. Neste artigo, daremos um passo à frente e aprenderemos a criar desenhos 2D desenhando vários objetos gráficos dentro dos aplicativos .NET, como aplicativo Web ASP.NET, aplicativo Windows e etc.
A seguir estão os gráficos vetoriais que vamos desenhar em nossos desenhos usando a API de gráficos .NET.
- Criar um desenho usando C#
- Desenhe um arco no desenho
- Desenhar uma spline de Bezier em um desenho
- Desenhar uma Spline Cardeal em um Desenho
- Desenhar uma curva fechada em um desenho
- Desenhar uma elipse em um desenho
- Desenhar linhas em um desenho
- Desenhar um caminho em um desenho
- Desenhar um polígono em um desenho
- Desenhar retângulo em um desenho
Antes de começarmos, certifique-se de ter instalado o Aspose.Drawing para .NET em seu aplicativo .NET. Você pode ler sobre os métodos de instalação em este post.
Criar um desenho do zero usando C#
Antes de tudo, vamos dar uma olhada em como criar um desenho vazio e salvá-lo como uma imagem PNG. Os passos são tão simples quanto uma torta.
- Crie um novo objeto Bitmap.
- Salve o desenho no formato PNG usando o método Bitmap.Save(string).
Você também pode salvar o desenho em outros formatos de imagem. O exemplo de código a seguir mostra como criar um desenho do zero usando C#.
// Exemplo para criar um novo desenho em C# .NET e renderizar como PNG.
// Veja https://github.com/aspose-drawing/Aspose.Drawing-for-.NET e https://docs.aspose.com/drawing/net/ para mais exemplos.
// Criar um novo desenho
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
// Salvar desenho
bitmap.Save(RunExamples.GetDataDir() + @"drawing.png");
Desenhe um arco no desenho usando C#
Vamos verificar como desenhar um arco dentro do desenho. A seguir estão as etapas para realizar esta operação.
- Defina uma instância da classe Bitmap.
- Inicialize um objeto da classe Graphics do objeto Bitmap.
- Crie um objeto Pen para desenhar o arco.
- Use o método Graphics.DrawArc(Pen, Single, Single, Single, Single, Single, Single) para desenhar um arco.
- Salve o desenho como uma imagem usando o método Bitmap.Save(string).
O exemplo de código a seguir mostra como desenhar um arco no desenho usando C#.
// Para exemplos completos e arquivos de dados, acesse 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");
Desenhe uma spline de Bezier no desenho usando C#
A seguir estão as etapas para desenhar uma spline bezier dentro de um desenho.
- Crie um objeto da classe Bitmap.
- Inicialize um objeto da classe Graphics do objeto Bitmap.
- Crie um objeto Pen para desenhar os gráficos.
- Use o método Graphics.DrawBezier(Pen, PointF, PointF, PointF, PointF) para desenhar Bezier Spline.
- Salve o desenho usando o método Bitmap.Save(string).
O exemplo de código a seguir cria um Bezier Spline usando C#.
// Para exemplos completos e arquivos de dados, acesse 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");
Adicione um Cardinal Spline no Desenho usando C#
Use as etapas a seguir para desenhar um spline cardinal usando nossa API de gráficos .NET.
- Instancie um objeto da classe Bitmap.
- Crie um objeto da classe Graphics a partir do objeto Bitmap.
- Crie um objeto Pen para desenho.
- Desenhe spline cardinal usando o método Graphics.DrawCurve(Pen,Point[]).
- Salve o desenho como uma imagem usando o método Bitmap.Save(string).
O exemplo de código C# a seguir desenha um spline cardinal usando Aspose.Drawing para .NET.
// Para exemplos completos e arquivos de dados, acesse 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");
Adicionar uma curva fechada no desenho usando C#
Você também pode desenhar uma curva fechada da mesma forma que desenhou os outros objetos gráficos. A seguir estão os passos para isso.
- Instancie um objeto Bitmap.
- Crie um objeto da classe Graphics e inicialize-o a partir do objeto Bitmap.
- Crie um objeto Pen para desenhar a curva fechada.
- Desenhe uma curva fechada usando o método Graphics.DrawClosedCurve(Pen,Point[]).
- Salve o desenho usando o método Bitmap.Save(string).
Você pode desenhar uma curva fechada usando o exemplo de código C# a seguir.
// Para exemplos completos e arquivos de dados, acesse 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");
Desenhe uma elipse em um desenho usando C#
A seguir estão as etapas para desenhar uma elipse em um desenho usando Aspose.Drawing para .NET.
- Crie uma instância da classe Bitmap.
- Defina uma instância da classe Graphics e inicialize-a a partir do objeto Bitmap.
- Use um objeto Pen para desenhar a elipse.
- Desenhe uma elipse usando o método Graphics.DrawEllipse(Pen, Single, Single, Single, Single).
- Salve o desenho como uma imagem usando o método Bitmap.Save(string).
O exemplo de código a seguir mostra como desenhar uma elipse usando C#.
// Para exemplos completos e arquivos de dados, acesse 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");
Desenhar linhas em um desenho usando C#
As linhas são um dos objetos básicos para criar os desenhos. A seguir estão as etapas para desenhar as linhas em um desenho usando a API de gráficos do Aspose.
- Instancie o objeto Bitmap.
- Crie um novo objeto Graphics e inicialize-o a partir do objeto Bitmap.
- Defina um objeto Pen para desenhar a linha.
- Desenhe uma linha usando o método Graphics.DrawLine(Pen, Int32, Int32, Int32, Int32).
- Salve o desenho usando o método Bitmap.Save(string).
O exemplo de código a seguir mostra como desenhar linhas em um desenho usando C#.
// Para exemplos completos e arquivos de dados, acesse 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");
Desenhe um caminho no desenho usando C#
A seguir estão as etapas para desenhar um caminho em um desenho usando C#.
- Instancie o objeto Bitmap.
- Crie um objeto da classe Graphics e inicialize-o a partir do objeto Bitmap.
- Defina um objeto Pen para desenhar o caminho.
- Crie uma instância da classe GraphicsPath.
- Adicione gráficos à coleção de caminhos.
- Desenhe o caminho usando o método Graphics.DrawPath(Pen, GraphicsPath).
- Salve o desenho usando o método Bitmap.Save(string).
O exemplo de código a seguir mostra como desenhar um caminho em um desenho usando C#.
// Para exemplos completos e arquivos de dados, acesse 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");
Desenhe um polígono em um desenho usando C#
A seguir estão as etapas para desenhar um polígono dentro de um desenho usando Aspose.Drawing para .NET.
- Instancie o objeto Bitmap.
- Defina um objeto Graphics e inicialize-o a partir do objeto Bitmap.
- Defina um objeto Pen para desenhar o polígono.
- Desenhe um polígono usando o método Graphics.DrawPolygon(Pen,Point[]).
- Salve o desenho usando o método Bitmap.Save(string).
É assim que você pode desenhar um polígono dentro de um desenho usando C#.
// Para exemplos completos e arquivos de dados, acesse 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");
Desenhe um retângulo dentro do desenho usando C#
Por último, mas não menos importante, desenhando um retângulo. A seguir estão os passos para desenhar um retângulo.
- Crie um objeto Bitmap.
- Crie um objeto Graphics e inicialize-o a partir do objeto Bitmap.
- Defina um objeto Pen para desenhar o retângulo.
- Desenhe um retângulo usando o método Graphics.DrawRectangle(Pen, Int32, Int32, Int32, Int32).
- Salve o desenho usando o método Bitmap.Save(string).
O exemplo de código C# a seguir desenha um retângulo em um desenho.
// Para exemplos completos e arquivos de dados, acesse 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");
Conclusão
Neste artigo, vimos como vários objetos gráficos podem ser desenhados dentro de um desenho programaticamente usando C#. O guia passo a passo e os exemplos de código demonstraram como desenhar linhas, retângulos, polígonos, arcos, spline bezier, spline cardinal, curvas e elipses dentro dos desenhos. Você pode aprender mais sobre nossa API de gráficos .NET usando a documentação.