Gratis C# .NET-bibliotek til at indlæse, læse og tegne skrifttyper
Open Source C# .NET-bibliotek til at indlæse, læse og tegne forskellige typer skrifttyper såsom TrueType, CFF, Woff, Woff2 og mange flere.
Når det kommer til at arbejde med skrifttyper programmatisk, har softwareudviklere ofte brug for robuste værktøjer og biblioteker til at håndtere forskellige skriftrelaterede operationer. Et sådant kraftfuldt open-source bibliotek, der har opnået popularitet blandt udviklere, er SixLabors Fonts-biblioteket. Fonts er et meget nyttigt open-source C# .NET-bibliotek, som leverer et omfattende sæt funktioner til at arbejde med forskellige skrifttyper i C#-applikationer. Udviklet af Six Labors-teamet, har Fonts-biblioteket til formål at forenkle håndteringen af skrifttyper og gøre det lettere for udviklere at arbejde med typografier programmatisk. Uanset om brugerne skal indlæse, gengive, måle eller manipulere skrifttyper, tilbyder Fonts-biblioteket en ren og intuitiv API til alle disse operationer.
Det open source Fonts-bibliotek tilbyder flere funktioner til skrifttype-manipulation og tilpasning, så softwareudviklere kan skabe unikke og visuelt tiltalende tekstelementer i deres applikationer. Der er flere vigtige funktioner som en del af biblioteket, såsom indlæsning af skrifttyper fra forskellige kilder (stier, streams eller indlejrede ressourcer), højkvalitets glyf-rendering, udførelse af præcis tekstlayout og justering, Unicode-tekstbehandling, organisering af skrifttyper i samlinger og meget mere.
Fonts-biblioteket er bygget på .NET Standard, hvilket gør det kompatibelt med flere platforme og rammer, herunder .NET Core, .NET Framework, Xamarin og Mono. Biblioteket tilbyder et enkelt og intuitivt API, så det er tilgængeligt for udviklere på alle færdighedsniveauer. Uanset om du bygger en desktop-applikation, en webservice eller en mobilapp, giver Fonts-biblioteket et solidt fundament for alle dine skrifttypehåndteringsbehov. Så prøv det og lås op for en verden af kreative skrifttyper i dine applikationer med det open source Fonts-bibliotek.
Kom i gang med skrifttyper
Den anbefalede måde at installere Fonts på er at bruge NuGet. Brug venligst følgende kommando for en glat installation.
Installer skrifttyper via NuGet
PM > Install-Package SixLabors.Fonts –PreRelease
Du kan også installere det manuelt; download de seneste udgivelsesfiler direkte fra GitHub-repositoryet.
Indlæs og læs skriftdetaljer i C#-apps
Det open source Fonts-bibliotek giver softwareudviklere mulighed for at indlæse forskellige typer skrifttyper og vise deres komplette detaljer i C#-applikationer. Biblioteket understøtter indlæsning af skrifttyper fra forskellige kilder, herunder filstier, streams, indlejrede ressourcer og mere. Denne fleksibilitet gør det muligt for udviklere at integrere skrifttypeindlæsning problemfrit i deres applikationer. Biblioteket understøtter arbejde med TrueType-skrifttyper, OpenType-skrifttyper med CFF1-outlines, Woff, Woff2 osv. Følgende eksempel viser, hvordan man læser beskrivelsen af en TTF-skrifttype ved hjælp af C#-kommandoer.
Hvordan læser man skrifttypebeskrivelse ved hjælp af C#-API'en?
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);
Understøttelse af skrifttype-samlinger via C#
Det open source-bibliotek Fonts giver softwareudviklere mulighed for at organisere skrifttyper i samlinger, hvilket gør det lettere at administrere og skifte mellem forskellige skrifttypefamilier og -stile. Med blot et par linjer kode kan udviklere oprette brugerdefinerede skrifttypesamlinger. Biblioteket har også leveret understøttelse af avancerede OpenType-funktioner som glyph substitution (GSUB) og glyph positioning (GPOS). Det følgende eksempel viser, hvordan udviklere kan arbejde med skrifttypesamlinger i C#-applikationer.
Hvordan arbejder man med sFont-samling via C#-kode?
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);
}