C#의 그래픽 프로그래밍은 생각보다 쉽거나 어려워 보일 수 있습니다. 이 기사에서는 프로그래밍 방식으로 멋진 벡터 그래픽을 만드는 방법을 배웁니다. 현재 프로젝트의 일부로 그래픽을 생성하든 자신의 게임이나 앱의 기초로 그래픽을 생성하든 상관없습니다! 아름다운 영상을 쉽게 만드는 방법을 배우게 됩니다. 시작하자!
이 기사에서는 다음 주제를 다룹니다.
C# 벡터 그래픽 프로그래밍 API - 무료 다운로드
C#에서 멋진 벡터 그래픽을 만들기 위해 Aspose.Drawing for .NET API를 사용할 것입니다. 프로그래밍 방식으로 텍스트, 기하 도형 및 이미지를 그리기 위한 크로스 플랫폼 2D 그래픽 라이브러리입니다. 지원되는 파일 형식을 로드, 저장 및 조작할 수 있습니다.
API의 DLL 다운로드 또는 NuGet을 사용하여 설치하십시오.
PM> Install-Package Aspose.Drawing
벡터 그래픽의 구조
벡터 그래픽은 선, 곡선 및 경로와 같은 기하학적 모양으로 구성됩니다. 길이 및 색상과 같은 다양한 속성을 가진 이러한 개체는 C# 프로그램으로 조작할 수 있습니다.
C#을 사용한 그래픽 프로그래밍
곡선, 선, 직사각형, 채워진 영역, 타원 및 다각형을 포함한 다양한 유형의 모양을 칠하거나 그릴 수 있습니다. API는 이러한 모양을 그리는 다양한 방법을 제공합니다. 다음 단계에 따라 프로그래밍 방식으로 다양한 벡터 그래픽을 만들 수 있습니다.
- Bitmap 클래스의 개체를 만듭니다.
- 비트맵에서 Graphics 클래스의 개체를 초기화합니다.
- 원하는 매개변수를 사용하여 Pen 또는 SolidBrush 클래스 개체를 정의합니다.
- Graphics 클래스의 모양별 메서드를 사용하여 원하는 모양을 그립니다.
- 마지막으로 이미지를 저장합니다.
이제 C#에서 이러한 단계를 수행하는 방법을 살펴보겠습니다.
C#을 사용한 그래픽 프로그래밍의 곡선
다음 방법을 사용하여 호, 원, 타원 또는 닫힌 곡선을 그릴 수 있습니다.
- 호를 그리는 DrawArc() 메서드.
- 타원을 그리는 DrawEllipse() 메서드.
- 닫힌 곡선을 그리는 DrawClosedCurve() 메서드.
- 곡선을 그리는 DrawCurve() 메서드.
곡선 모양을 그리려면 다음 단계를 따르십시오.
- 먼저 Bitmap 클래스의 인스턴스를 만듭니다.
- 그런 다음 새로 만든 Bitmap 개체에서 FromImage() 메서드를 사용하여 Graphics 클래스 개체를 만듭니다.
- 그런 다음 지정된 색상과 크기로 Pen 클래스 개체를 정의합니다.
- 그런 다음 DrawClosedCurve() 메서드를 호출하여 닫힌 곡선을 그립니다.
- 선택적으로 위의 단계를 반복하여 호와 타원을 추가합니다.
- 마지막으로 Save() 메서드를 사용하여 출력 이미지를 저장합니다.
다음 코드 샘플은 C#에서 곡선 모양을 그리는 방법을 보여줍니다.
// 이 코드 예제는 닫힌 곡선, 호 및 원을 그리는 방법을 보여줍니다.
// 비트맵 생성
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
// Bitmap의 이니셜 그래픽
Graphics graphics = Graphics.FromImage(bitmap);
// 그릴 펜 정의
Pen penBlue = new Pen(Color.Blue, 4);
// 곡선 그리기
graphics.DrawClosedCurve(penBlue, new Point[] { new Point(10, 700), new Point(250, 500), new Point(500, 10), new Point(750, 500), new Point(990, 700) });
// 호 그리기
Pen penRed = new Pen(Color.Red, 2);
graphics.DrawArc(penRed, 0, 0, 700, 700, 0, 180);
// 타원 그리기
Pen penGreen = new Pen(Color.Green, 2);
graphics.DrawEllipse(penGreen, 10, 10, 500, 500);
// 비트맵을 PNG로 저장
bitmap.Save("C:\\Files\\Drawing\\Curves.png");
C#을 사용한 그래픽 프로그래밍의 다각형 및 사각형
앞에서 언급한 단계에 따라 다각형과 직사각형을 그릴 수 있습니다. 그러나 4단계에서 다음 방법을 사용해야 합니다.
- 다각형을 그리기 위한 DrawPolygon() 메서드.
- DrawRectangle() 메서드를 사용하여 사각형을 그립니다.
다음 코드 샘플은 C#에서 다각형과 사각형을 그리는 방법을 보여줍니다.
// 이 코드 예제는 다각형과 사각형을 그리는 방법을 보여줍니다.
// 비트맵 생성
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
// Bitmap의 이니셜 그래픽
Graphics graphics = Graphics.FromImage(bitmap);
// 그릴 펜 정의
Pen penBlue = new Pen(Color.Blue, 4);
// 다각형 그리기
graphics.DrawPolygon(pen, new Point[] { new Point(100, 100), new Point(500, 700), new Point(900, 100) });
// 직사각형 그리기
Pen penRed = new Pen(Color.Red, 2);
graphics.DrawRectangle(penRed, 10, 10, 900, 700);
// 비트맵을 PNG로 저장
bitmap.Save("C:\\Files\\Drawing\\Shapes.png");
C#을 사용한 그래픽 프로그래밍의 라인
마찬가지로 앞에서 언급한 단계에 따라 선을 그릴 수 있습니다. 그러나 4단계에서 DrawLine() 메서드를 사용하여 선을 그어야 합니다.
다음 코드 샘플은 C#에서 선을 그리는 방법을 보여줍니다.
// 이 코드 예제는 선을 그리는 방법을 보여줍니다.
// 비트맵 생성
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
// Bitmap의 이니셜 그래픽
Graphics graphics = Graphics.FromImage(bitmap);
// 그릴 펜 정의
Pen penBlue = new Pen(Color.Blue, 4);
// 선을 그리다
graphics.DrawLine(pen, 10, 700, 500, 10);
graphics.DrawLine(pen, 500, 10, 990, 700);
// 비트맵을 PNG로 저장
bitmap.Save("C:\\Files\\Drawing\\Lines.png");
C#을 사용한 그래픽 프로그래밍의 경로
벡터 그래픽에서 경로는 다른 점과 함께 시작점과 끝점으로 정의되는 일련의 부드러운 직선을 나타냅니다. 다음 단계에 따라 경로를 그릴 수 있습니다.
- 먼저 Bitmap 클래스의 인스턴스를 만듭니다.
- 그런 다음 FromImage() 메서드를 사용하여 새로 생성된 Bitmap 객체에서 Graphics 클래스 객체를 초기화합니다.
- 그런 다음 지정된 색상과 크기로 Pen 클래스 개체를 정의합니다.
- 다음으로 GraphicsPath 클래스의 인스턴스를 만듭니다.
- 그런 다음 AddLine() 메서드를 사용하여 줄을 추가합니다.
- 그런 다음 Pen 및 GraphicsPath 개체를 사용하여 DrawPath() 메서드를 호출합니다.
- 마지막으로 Save() 메서드를 사용하여 출력 이미지를 저장합니다.
다음 코드 샘플은 C#에서 경로를 그리는 방법을 보여줍니다.
// 이 코드 예제는 경로를 그리는 방법을 보여줍니다.
// 비트맵 생성
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
// Bitmap의 이니셜 그래픽
Graphics graphics = Graphics.FromImage(bitmap);
// 그릴 펜 정의
Pen penBlue = new Pen(Color.Blue, 4);
// 그래픽 경로 초기화
GraphicsPath path = new GraphicsPath();
// 1행 추가
path.AddLine(100, 100, 1000, 400);
// 2행 추가
path.AddLine(1000, 600, 300, 600);
// 직사각형 추가
path.AddRectangle(new Rectangle(500, 350, 200, 400));
// 타원 추가
path.AddEllipse(10, 250, 450, 300);
// 경로 그리기
graphics.DrawPath(pen, path);
// 비트맵을 PNG로 저장
bitmap.Save("C:\\Files\\Drawing\\Shapes.png");
C#을 사용하여 그래픽 프로그래밍에서 영역 채우기
다음 단계에 따라 채우기 영역을 그릴 수 있습니다.
- 먼저 Bitmap 클래스의 인스턴스를 만듭니다.
- 그런 다음 FromImage() 메서드를 사용하여 새로 생성된 Bitmap 객체에서 Graphics 클래스 객체를 초기화합니다.
- 그런 다음 GraphicsPath 클래스의 인스턴스를 만듭니다.
- 한편, AddPolygon() 메서드를 사용하여 다각형을 추가합니다.
- 다음으로 Region 클래스의 인스턴스를 만듭니다.
- 그런 다음 다른 GraphicsPath 개체를 추가하고 AddRectangle() 메서드를 사용하여 사각형을 추가합니다.
- 그런 다음 Exclude() 메서드를 호출하여 영역에서 내부 경로를 제외합니다.
- 그런 다음 지정된 색상으로 SolidBrush 클래스 개체를 정의합니다.
- 그런 다음 SolidBrush 및 GraphicsPath 개체를 사용하여 FillRegion() 메서드를 호출합니다.
- 마지막으로 Save() 메서드를 사용하여 출력 이미지를 저장합니다.
다음 코드 샘플은 C#에서 채워진 영역을 그리는 방법을 보여줍니다.
// 이 코드 예제는 영역을 그리는 방법을 보여줍니다.
// 비트맵 생성
Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
// Bitmap의 이니셜 그래픽
Graphics graphics = Graphics.FromImage(bitmap);
// 다각형 추가
path.AddPolygon(new Point[] { new Point(100, 400), new Point(500, 100), new Point(900, 400), new Point(500, 700) });
// 영역 초기화
Region region = new Region(path);
// 내부 그래픽 경로
GraphicsPath innerPath = new GraphicsPath();
// 직사각형 추가
innerPath.AddRectangle(new Rectangle(300, 300, 400, 200));
// 내부 경로 제외
region.Exclude(innerPath);
// 단색 브러시 정의
Brush brush = new SolidBrush(Color.Blue);
// 채우기 영역
graphics.FillRegion(brush, region);
// 비트맵을 PNG로 저장
bitmap.Save("C:\\Files\\Drawing\\Lines.png");
무료 임시 라이센스 받기
평가 제한 없이 Aspose.Drawing for .NET을 사용해 볼 수 있는 무료 임시 라이선스 받기입니다.
결론
이 문서에서는 다음 방법을 배웠습니다.
- 새 비트맵을 만듭니다.
- 비트맵에 직사각형, 타원 등을 그립니다.
- 선과 경로를 그립니다.
- C#에서 비트맵 이미지를 PNG로 저장합니다.
C#의 그래픽 프로그래밍 외에도 문서를 사용하여 .NET용 Aspose.Drawing에 대해 자세히 알아보고 API에서 지원하는 다양한 기능을 탐색할 수 있습니다. 모호한 점이 있는 경우 무료 지원 포럼에서 언제든지 문의해 주십시오.