.NET MAUI에서 SkiaSharp 코드 다시 사용
SkiaSharp는 2D 벡터 그래픽, 비트맵 및 텍스트를 그리는 .NET 및 C#용 2D 그래픽 시스템입니다. 그것은 구글 제품에 광범위 하 게 사용 되는 오픈 소스 Skia 그래픽 엔진에 의해 구동. 몇 가지 사소한 업데이트와 함께 .NET 다중 플랫폼 앱 UI(.NET MAUI) 앱의 Xamarin.Forms 앱에서 SkiaSharp 코드를 다시 사용할 수 있습니다.
.NET MAUI 앱의 Xamarin.Forms 앱에서 SkiaSharp 코드를 다시 사용하려면 다음을 수행해야 합니다.
- 프로젝트에서 Xamarin.Forms SkiaSharp NuGet 패키지를 제거하고 프로젝트에 .NET MAUI SkiaSharp NuGet 패키지를 추가합니다.
- 네임스페이스를 업데이트합니다.
- SkiaSharp를 초기화합니다.
NuGets 추가
.NET MAUI용 SkiaSharp는 일련의 NuGet 패키지로 패키지됩니다. Xamarin.Forms 앱을 .NET MAUI 앱으로 마이그레이션한 후에는 앱에서 기존 SkiaSharp NuGet 패키지를 모두 제거해야 합니다. 그런 다음 NuGet 패키지 관리자를 사용하여 SkiaSharp.Views.Maui.Controls NuGet 패키지를 검색하고 프로젝트에 추가합니다. 종속 SkiaSharp 패키지도 설치됩니다.
네임스페이스 업데이트
SkiaSharp를 사용하는 Xamarin.Forms 앱은 일반적으로 네임스페이스와 네임스페이 SkiaSharp 스의 형식을 SkiaSharp.Views.Forms 사용합니다. .NET MAUI용 SkiaSharp에서는 네임스페이스를 계속 사용 SkiaSharp 하지만 네임스페이스에 있던 SkiaSharp.Views.Forms 형식은 네임스페이스 및 SkiaSharp.Views.Maui.Controls 네임스페이스로 SkiaSharp.Views.Maui 이동했습니다.
다음 표에서는 .NET MAUI 앱에서 SkiaSharp 코드를 빌드하는 데 사용해야 하는 네임스페이스를 보여 줍니다.
.NET MAUI 네임스페이스 | 세부 정보 |
---|---|
SkiaSharp | 모든 SkiaSharp 클래스, 구조체 및 열거형을 포함합니다. |
SkiaSharp.Views.Maui | 터치 조작 및 이벤트 인수를 지원하는 형식을 포함합니다. |
SkiaSharp.Views.Maui.Controls | SKCanvasView.NET MAUI View 클래스에서 파생되고 SkiaSharp 그래픽 출력을 호스트하는 클래스를 포함합니다. 또한 다른 ImageSource 클래스를 포함합니다. |
SkiaSharp.Views.Maui.Controls.Hosting | UseSkiaSharp.NET MAUI 앱에서 SkiaSharp를 초기화하는 데 사용되는 메서드를 포함합니다. 자세한 내용은 SkiaSharp 초기화를 참조 하세요. |
SkiaSharp 초기화
클래스의 개체에서 메서드를 UseSkiaSharp 호출하여 앱에서 SkiaSharp를 MauiAppBuilder 초기화합니다 MauiProgram
.
using Microsoft.Extensions.Logging;
using SkiaSharp.Views.Maui.Controls.Hosting;
namespace MyMauiApp;
public static class MauiProgram
{
public static MauiApp CreateMauiApp()
{
var builder = MauiApp.CreateBuilder();
builder
.UseMauiApp<App>()
.UseSkiaSharp()
.ConfigureFonts(fonts =>
{
fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
fonts.AddFont("OpenSans-Semibold.ttf", "OpenSansSemibold");
});
#if DEBUG
builder.Logging.AddDebug();
#endif
return builder.Build();
}
}
참고 항목
메서드를 UseSkiaSharp 호출하려면 네임스페이 using
스에 대한 SkiaSharp.Views.Maui.Controls.Hosting
지시문을 추가해야 합니다.
.NET MAUI