Blazor WebAssembly 앱 C#의 System.Drawing

Blazor 프레임워크는 웹 기술에서 대화형 및 재사용 가능한 웹 UI를 구축하는 데 널리 사용됩니다. 또한 Blazor WebAssembly 앱은 WebAssembly 기반 .NET 런타임의 브라우저에서 직접 실행됩니다. 이 문서에서는 Blazor WebAssembly 앱에서 System.Drawing 라이브러리를 사용하는 방법을 다룹니다. API는 텍스트 문자열, 이미지, 벡터 그래픽 등을 그리는 데 사용할 수 있습니다. 자세한 내용을 알아보려면 다음 제목 아래 이 문서를 살펴보겠습니다.

C# Blazor WebAssembly 앱 프로젝트 만들기

Microsoft Visual Studio IDE에서 Blazor WebAssembly 앱을 만듭니다. ‘다음’ 버튼을 누르고 다음 스크린샷에 따라 .NET 5.0 및 ASP.NET Core 확인란을 선택합니다.

Blazor 웹어셈블리 앱
System.Drawing 블레이저

프로젝트 참조 업데이트

NuGet 갤러리를 탐색하고 프로젝트 종속성으로 추가할 Aspose.Drawing 패키지를 구성합니다.

이미지를 그리는 코드 추가

Pages/Index.razor 파일 내용을 다음 코드 조각으로 교체하여 그림이 포함된 이미지를 만듭니다.

@page "/"
@using System.Drawing;
@using System.Drawing.Drawing2D;
@using System.Drawing.Imaging;
@using System.IO;

<img src="@imageSrc" />

@code {
    private string imageSrc;

    public Index()
    {
        imageSrc = "data:image/png;base64, " + Convert.ToBase64String(Draw(ImageFormat.Png).ToArray());
    }

    static MemoryStream Draw(ImageFormat format)
    {
        Bitmap bitmap = new Bitmap(1000, 800, PixelFormat.Format32bppPArgb);
        Graphics graphics = Graphics.FromImage(bitmap);
        graphics.SmoothingMode = SmoothingMode.AntiAlias;

        Brush brush = new LinearGradientBrush(new Point(0, 0), new Point(1000, 800), Color.Red, Color.Blue);
        graphics.FillEllipse(brush, 100, 100, 800, 600);

        MemoryStream result = new MemoryStream();
        bitmap.Save(result, format);
        result.Seek(0, SeekOrigin.Begin);
        return result;
    }
}

라이선스 및 초기화 코드 추가

이제 라이선스 파일을 포함된 리소스로 추가하고 Program.cs 파일의 기본 메서드에 다음 라이선스 초기화 코드를 추가할 수 있습니다. 단, 라이선스가 없는 경우 임시 라이선스를 무료로 신청할 수 있습니다.

Aspose.Drawing.License license = new Aspose.Drawing.License();
license.SetLicense("BlazorApp1.Client.Aspose.Drawing.NET.lic");

애플리케이션 실행

Microsoft Visual Studio IDE에서 응용 프로그램을 실행하면 브라우저에 다음과 같이 그라디언트 이미지가 표시됩니다.

결론

이 문서에서는 Blazor WebAssembly 애플리케이션에서 System.Drawing 기능을 사용하는 방법을 배웠습니다. API에서 제공하는 기능에 대한 자세한 내용은 문서 공간을 참조하십시오. 또한 요구 사항이나 우려 사항에 대해 논의해야 하는 경우 포럼을 통해 저희에게 연락하십시오.

또한보십시오

비 Windows 플랫폼에서 .NET 6과 함께 System.Drawing 사용