이전 기사에서 .NET Graphics API - Aspose.Drawing for .NET에 대한 개요를 제공했습니다. 이와 함께 C#을 사용하여 처음부터 이미지를 생성하거나 기존 이미지에 그래픽을 그리는 방법을 살펴보았습니다. 이 기사에서는 한 단계 더 나아가 ASP.NET 웹 응용 프로그램, Windows 응용 프로그램 등과 같은 .NET 응용 프로그램 내에서 다양한 그래픽 개체를 그려서 2D 도면을 만드는 방법을 배웁니다.
다음은 .NET Graphics API를 사용하여 도면 내에 그릴 벡터 그래픽입니다.
- C#을 사용하여 도면 만들기
- 도면에 호 그리기
- 도면에 베지어 스플라인 그리기
- 도면에 카디널 스플라인 그리기
- 도면에 닫힌 곡선 그리기
- 도면에 타원 그리기
- 도면에 선 그리기
- 도면에 경로 그리기
- 도면에 다각형 그리기
- 도면에 직사각형 그리기
시작하기 전에 .NET 응용 프로그램 내에 .NET용 Aspose.Drawing을 설치했는지 확인하십시오. 이 게시물에서 설치 방법에 대해 읽을 수 있습니다.
C#을 사용하여 처음부터 그림 만들기
먼저 빈 그림을 만들어 PNG 이미지로 저장하는 방법을 살펴보겠습니다. 단계는 파이처럼 간단합니다.
- 새 Bitmap 개체를 만듭니다.
- Bitmap.Save(string) 메서드를 사용하여 도면을 PNG 형식으로 저장합니다.
그림을 기타 이미지 형식으로도 저장할 수 있습니다. 다음 코드 샘플은 C#을 사용하여 처음부터 그림을 만드는 방법을 보여줍니다.
// C# .NET에서 새 도면을 만들고 PNG로 렌더링하는 예입니다.
// 더 많은 예제는 https://github.com/aspose-drawing/Aspose.Drawing-for-.NET 및 https://docs.aspose.com/drawing/net/을 참조하십시오.
// 새 도면 작성
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Graphics graphics = Graphics.FromImage(bitmap);
// 그림 저장
bitmap.Save(RunExamples.GetDataDir() + @"drawing.png");
C#을 사용하여 드로잉에 호 그리기
도면에 호를 그리는 방법을 알아보겠습니다. 다음은 이 작업을 수행하는 단계입니다.
- Bitmap 클래스의 인스턴스를 정의합니다.
- Bitmap 객체에서 Graphics 클래스의 객체를 초기화합니다.
- 호를 그릴 Pen 개체를 만듭니다.
- Graphics.DrawArc(Pen, Single, Single, Single, Single, Single, Single) 메서드를 사용하여 호를 그립니다.
- Bitmap.Save(string) 메서드를 사용하여 그림을 이미지로 저장합니다.
다음 코드 샘플은 C#을 사용하여 도면에 호를 그리는 방법을 보여줍니다.
// 전체 예제 및 데이터 파일을 보려면 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");
C#을 사용하여 드로잉에서 베지어 스플라인 그리기
다음은 도면 내에서 베지어 스플라인을 그리는 단계입니다.
- Bitmap 클래스의 객체를 생성합니다.
- Bitmap 객체에서 Graphics 클래스의 객체를 초기화합니다.
- 그래픽을 그릴 Pen 개체를 만듭니다.
- Graphics.DrawBezier(Pen, PointF, PointF, PointF, PointF) 메서드를 사용하여 베지어 스플라인을 그립니다.
- Bitmap.Save(string) 메서드를 사용하여 도면을 저장합니다.
다음 코드 샘플은 C#을 사용하여 베지어 스플라인을 만듭니다.
// 전체 예제 및 데이터 파일을 보려면 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");
C#을 사용하여 드로잉에 카디널 스플라인 추가
.NET Graphics API를 사용하여 카디널 스플라인을 그리려면 다음 단계를 따르십시오.
- Bitmap 클래스의 개체를 인스턴스화합니다.
- Bitmap 객체에서 Graphics 클래스의 객체를 생성합니다.
- 그리기 위한 Pen 개체를 만듭니다.
- Graphics.DrawCurve(Pen,Point[]) 메서드를 사용하여 카디널 스플라인을 그립니다.
- Bitmap.Save(string) 메서드를 사용하여 그림을 이미지로 저장합니다.
다음 C# 코드 샘플은 .NET용 Aspose.Drawing을 사용하여 카디널 스플라인을 그립니다.
// 전체 예제 및 데이터 파일을 보려면 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");
C#을 사용하여 드로잉에 닫힌 곡선 추가
다른 그래픽 개체를 그린 것과 같은 방식으로 닫힌 곡선을 그릴 수도 있습니다. 다음은 이를 위한 단계입니다.
- Bitmap 개체를 인스턴스화합니다.
- Graphics 클래스의 객체를 생성하고 Bitmap 객체에서 초기화합니다.
- 닫힌 곡선을 그리기 위한 Pen 개체를 만듭니다.
- Graphics.DrawClosedCurve(Pen,Point[]) 메서드를 사용하여 닫힌 곡선을 그립니다.
- Bitmap.Save(string) 메서드를 사용하여 도면을 저장합니다.
다음 C# 코드 샘플을 사용하여 닫힌 곡선을 그릴 수 있습니다.
// 전체 예제 및 데이터 파일을 보려면 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");
C#을 사용하여 드로잉에 타원 그리기
다음은 .NET용 Aspose.Drawing을 사용하여 도면에 타원을 그리는 단계입니다.
- Bitmap 클래스의 인스턴스를 만듭니다.
- Graphics 클래스의 인스턴스를 정의하고 Bitmap 객체에서 초기화합니다.
- Pen 개체를 사용하여 타원을 그립니다.
- Graphics.DrawEllipse(Pen, Single, Single, Single, Single) 메서드를 사용하여 타원을 그립니다.
- Bitmap.Save(string) 메서드를 사용하여 그림을 이미지로 저장합니다.
다음 코드 샘플은 C#을 사용하여 타원을 그리는 방법을 보여줍니다.
// 전체 예제 및 데이터 파일을 보려면 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");
C#을 사용하여 드로잉에 선 그리기
선은 도면을 작성하기 위한 기본 개체 중 하나입니다. 다음은 Aspose의 Graphics API를 사용하여 도면에 선을 그리는 단계입니다.
- Bitmap 개체를 인스턴스화합니다.
- 새 Graphics 개체를 만들고 Bitmap 개체에서 초기화합니다.
- 선을 그릴 Pen 개체를 정의합니다.
- Graphics.DrawLine(Pen, Int32, Int32, Int32, Int32) 메서드를 사용하여 선을 그립니다.
- Bitmap.Save(string) 메서드를 사용하여 도면을 저장합니다.
다음 코드 샘플은 C#을 사용하여 드로잉 내에서 선을 그리는 방법을 보여줍니다.
// 전체 예제 및 데이터 파일을 보려면 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");
C#을 사용하여 드로잉에 경로 그리기
다음은 C#을 사용하여 도면 내에 경로를 그리는 단계입니다.
- Bitmap 개체를 인스턴스화합니다.
- Graphics 클래스의 객체를 생성하고 Bitmap 객체에서 초기화합니다.
- 경로를 그릴 Pen 개체를 정의합니다.
- GraphicsPath 클래스의 인스턴스를 만듭니다.
- 경로 컬렉션에 그래픽을 추가합니다.
- Graphics.DrawPath(Pen, GraphicsPath) 메서드를 사용하여 경로를 그립니다.
- Bitmap.Save(string) 메서드를 사용하여 도면을 저장합니다.
다음 코드 샘플은 C#을 사용하여 드로잉 내에서 경로를 그리는 방법을 보여줍니다.
// 전체 예제 및 데이터 파일을 보려면 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");
C#을 사용하여 도면에 다각형 그리기
다음은 .NET용 Aspose.Drawing을 사용하여 도면 내에 다각형을 그리는 단계입니다.
- Bitmap 개체를 인스턴스화합니다.
- Graphics 개체를 정의하고 Bitmap 개체에서 초기화합니다.
- 다각형을 그릴 Pen 개체를 정의합니다.
- Graphics.DrawPolygon(Pen,Point[]) 메서드를 사용하여 다각형을 그립니다.
- Bitmap.Save(string) 메서드를 사용하여 도면을 저장합니다.
이것이 C#을 사용하여 도면 내에서 다각형을 그리는 방법입니다.
// 전체 예제 및 데이터 파일을 보려면 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");
C#을 사용하여 드로잉 내에서 사각형 그리기
마지막으로 직사각형 그리기입니다. 다음은 직사각형을 그리는 단계입니다.
- Bitmap 개체를 만듭니다.
- Graphics 개체를 만들고 Bitmap 개체에서 초기화합니다.
- 사각형을 그릴 Pen 개체를 정의합니다.
- Graphics.DrawRectangle(Pen, Int32, Int32, Int32, Int32) 메서드를 사용하여 사각형을 그립니다.
- Bitmap.Save(string) 메서드를 사용하여 도면을 저장합니다.
다음 C# 코드 샘플은 드로잉 내에 사각형을 그립니다.
// 전체 예제 및 데이터 파일을 보려면 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");
결론
이 기사에서는 C#을 사용하여 프로그래밍 방식으로 도면 내에서 다양한 그래픽 개체를 그리는 방법을 살펴보았습니다. 단계별 가이드 및 코드 샘플은 도면 내에서 선, 직사각형, 다각형, 호, 베지어 스플라인, 카디널 스플라인, 곡선 및 타원을 그리는 방법을 보여주었습니다. 문서를 사용하여 .NET 그래픽 API에 대해 자세히 알아볼 수 있습니다.