무료 C# .NET 라이브러리로 폰트를 로드하고, 읽고, 그립니다
TrueType, CFF, Woff, Woff2 등 다양한 유형의 폰트를 로드하고, 읽고, 그릴 수 있는 오픈 소스 C# .NET 라이브러리.
프로그램matically 폰트를 다룰 때, 소프트웨어 개발자는 다양한 폰트 관련 작업을 처리하기 위해 강력한 도구와 라이브러리가 필요합니다. 개발자들 사이에서 인기를 얻고 있는 강력한 오픈소스 라이브러리 중 하나가 SixLabors Fonts 라이브러리입니다. Fonts는 C# .NET용으로 제공되는 매우 유용한 오픈소스 라이브러리로, C# 애플리케이션 내에서 다양한 종류의 폰트를 다루기 위한 포괄적인 기능을 제공합니다. Six Labors 팀이 개발한 이 라이브러리는 폰트 처리 작업을 단순화하고 개발자가 프로그래밍 방식으로 서체를 쉽게 다룰 수 있도록 설계되었습니다. 사용자가 폰트를 로드, 렌더링, 측정 또는 조작해야 할 경우, Fonts 라이브러리는 이러한 모든 작업을 위한 깔끔하고 직관적인 API를 제공합니다.
오픈 소스 Fonts 라이브러리는 글꼴 조작 및 맞춤화를 위한 다양한 기능을 제공하여 소프트웨어 개발자가 애플리케이션 내에서 독특하고 시각적으로 매력적인 텍스트 요소를 만들 수 있도록 합니다. 라이브러리에는 다양한 소스(경로, 스트림 또는 임베디드 리소스)에서 글꼴을 로드하고, 고품질 글리프 렌더링 기능을 제공하며, 정밀한 텍스트 레이아웃 및 정렬을 수행하고, 유니코드 텍스트 처리를 지원하고, 글꼴을 컬렉션으로 조직하는 등 여러 중요한 기능이 포함되어 있습니다.
.NET Standard를 기반으로 구축된 Fonts 라이브러리는 .NET Core, .NET Framework, Xamarin, Mono 등 다양한 플랫폼 및 프레임워크와 호환됩니다. 이 라이브러리는 간단하고 직관적인 API를 제공하여 모든 수준의 개발자가 쉽게 사용할 수 있습니다. 데스크톱 애플리케이션이든 웹 서비스이든 모바일 앱이든, Fonts 라이브러리는 모든 글꼴 관리 요구에 대한 견고한 기반을 제공합니다. 오픈 소스 Fonts 라이브러리를 사용해 보시고 애플리케이션에서 창의적인 Fonts의 세계를 열어보세요.
폰트 시작하기
Fonts를 설치하는 권장 방법은 NuGet을 사용하는 것입니다. 원활한 설치를 위해 다음 명령을 사용하십시오.
NuGet을 통해 폰트 설치
PM > Install-Package SixLabors.Fonts –PreRelease
수동으로도 설치할 수 있습니다; 최신 릴리스 파일을 GitHub 저장소에서 직접 다운로드하십시오.
C# 앱에서 폰트 세부 정보 로드 및 읽기
오픈 소스 Fonts 라이브러리는 소프트웨어 개발자가 다양한 유형의 글꼴을 로드하고 C# 애플리케이션 내에서 해당 글꼴의 전체 세부 정보를 표시할 수 있게 합니다. 이 라이브러리는 파일 경로, 스트림, 임베디드 리소스 등 다양한 소스에서 글꼴을 로드하는 것을 지원합니다. 이러한 유연성을 통해 개발자는 글꼴 로드를 애플리케이션에 원활하게 통합할 수 있습니다. 이 라이브러리는 TrueType 글꼴, CFF1 아웃라인을 가진 OpenType 글꼴, Woff, Woff2 등을 지원합니다. 다음 예제는 C# 명령을 사용하여 TTF 글꼴에 대한 설명을 읽는 방법을 보여줍니다.
C# API를 사용하여 폰트 설명을 읽는 방법?
FontDescription description = null;
using(var fs = File.OpenRead("Font.ttf")){
description = FontDescription.Load(fs); // once it has loaded the data the stream is no longer required and can be disposed of
}
string name = description.FontName(CultureInfo.InvariantCulture);
C#를 통한 폰트 컬렉션 지원
오픈 소스 라이브러리 Fonts는 소프트웨어 개발자가 글꼴을 컬렉션으로 조직할 수 있게 하여 다양한 글꼴 패밀리와 스타일을 관리하고 전환하는 것을 쉽게 합니다. 몇 줄의 코드만으로 개발자는 사용자 정의 글꼴 컬렉션을 만들 수 있습니다. 이 라이브러리는 고급 OpenType 기능인 글리프 대체(GSUB)와 글리프 위치 지정(GPOS)도 지원합니다. 다음 예제는 개발자가 C# 애플리케이션 내에서 글꼴 컬렉션을 활용하는 방법을 보여줍니다.
C# 코드로 sFont 컬렉션을 다루는 방법?
using SixLabors.Fonts;
FontCollection collection = new();
collection.Add("path/to/font.ttf");
collection.Add("path/to/font2.ttf");
collection.Add("path/to/emojiFont.ttf");
collection.AddCollection("path/to/font.ttc");
if(collection.TryFind("Font Name", out FontFamily family))
if(collection.TryFind("Emoji Font Name", out FontFamily emojiFamily))
{
// family will not be null here
Font font = family.CreateFont(12, FontStyle.Italic);
// TextOptions provides comprehensive customization options support
TextOptions options = new(font)
{
// Will be used if a particular code point doesn't exist in the font passed into the constructor. (e.g. emoji)
FallbackFontFamilies = new [] { emojiFamily }
};
FontRectangle rect = TextMeasurer.Measure("Text to measure", options);
}