Bezmaksas C# .NET bibliotēka fontu ielādei, nolasīšanai un zīmēšanai
Atvērtā koda C# .NET bibliotēka fontu ielādei, nolasīšanai un zīmēšanai dažādos tipos, piemēram, TrueType, CFF, Woff, Woff2 un daudzos citos.
Runājot par programmatiskām fontu darbībām, programmatūras izstrādātājiem bieži ir nepieciešami stabili rīki un bibliotēkas, lai apstrādātu dažādas ar fontiem saistītās operācijas. Viena no spēcīgajām atvērtā koda bibliotēkām, kas ir ieguvusi popularitāti izstrādātāju vidū, ir SixLabors Fonts bibliotēka. Fonts ir ļoti noderīga atvērtā koda C# .NET bibliotēka, kas nodrošina plašu funkcionalitāšu klāstu, lai strādātu ar dažādiem fontu tipiem C# lietotnēs. Six Labors komanda izstrādājusi Fonts bibliotēku, lai vienkāršotu fontu apstrādes uzdevumus un atvieglotu izstrādātājiem darbu ar tipogrāfiju programmatiskā veidā. Neatkarīgi no tā, vai lietotājiem ir jāielādē, jārenderē, jāmera vai jāmanipulē ar fontiem, Fonts bibliotēka piedāvā tīru un intuitīvu API visām šīm operācijām.
Atvērtā koda Fonts bibliotēka nodrošina vairākas funkcijas fontu manipulācijai un pielāgošanai, ļaujot programmatūras izstrādātājiem izveidot unikālus un vizuāli pievilcīgus teksta elementus savās lietojumprogrammās. Bibliotēkā ir vairākas svarīgas funkcijas, piemēram, fontu ielāde no dažādiem avotiem (ceļiem, straumēm vai iegultajiem resursiem), augstas kvalitātes glifu renderēšanas iespējas, precīza teksta izkārtojuma un līdzināšanas veikšana, Unicode teksta apstrāde, fontu organizēšana kolekcijās un daudz kas cits.
Fonts bibliotēka ir izveidota uz .NET Standard, padarot to saderīgu ar vairākām platformām un ietvariem, tostarp .NET Core, .NET Framework, Xamarin un Mono. Bibliotēka piedāvā vienkāršu un intuitīvu API, kas padara to pieejamu izstrādātājiem visos prasmju līmeņos. Neatkarīgi no tā, vai veidojat darbvirsmas lietojumprogrammu, tīmekļa pakalpojumu vai mobilo lietotni, Fonts bibliotēka nodrošina stabilu pamatu visām jūsu fontu pārvaldības vajadzībām. Tāpēc izmēģiniet to un atklājiet radošo Fontu pasauli savās lietojumprogrammās ar atvērtā koda Fonts bibliotēku.
Sākšana ar fontiem
Ieteicamais veids, kā instalēt Fonts, ir izmantot NuGet. Lūdzu, izmantojiet šādu komandu, lai veiktu gludu instalāciju.
Instalēt fontus, izmantojot NuGet
PM > Install-Package SixLabors.Fonts –PreRelease
Jūs varat arī instalēt to manuāli; lejupielādējiet jaunākos izlaiduma failus tieši no GitHub krātuves.
Ielādēt & lasīt fonta informāciju C# lietotnēs
Atvērtā koda Fonts bibliotēka ļauj programmatūras izstrādātājiem ielādēt dažādus fontu veidus un parādīt to pilnu informāciju C# lietojumprogrammās. Bibliotēka atbalsta fontu ielādi no dažādiem avotiem, tostarp failu ceļiem, straumēm, iegultajiem resursiem un citām vietām. Šī elastība ļauj izstrādātājiem nevainojami integrēt fontu ielādi savās lietojumprogrammās. Bibliotēka atbalsta darbu ar TrueType fontiem, OpenType fontiem ar CFF1 kontūrām, Woff, Woff2 un tā tālāk. Zemāk esošais piemērs parāda, kā, izmantojot C# komandas, nolasīt TTF fonta aprakstu.
Kā nolasīt fonta aprakstu, izmantojot 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);
Fontu kolekciju atbalsts, izmantojot C#
Atvērtā koda bibliotēka Fonts ļauj programmatūras izstrādātājiem organizēt fontus kolekcijās, padarot to vieglāku pārvaldīt un pārslēgties starp dažādām fontu ģimenēm un stiliem. Ar tikai pāris koda rindām izstrādātāji var izveidot pielāgotas fontu kolekcijas. Bibliotēka arī nodrošina atbalstu uzlabotām OpenType funkcijām, piemēram, glifu aizvietošanai (GSUB) un glifu pozicionēšanai (GPOS). Zemāk esošais piemērs parāda, kā izstrādātāji var strādāt ar fontu kolekcijām C# lietojumprogrammās.
Kā strādāt ar sFont kolekciju, izmantojot C# kodu?
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);
}