В това ръководство стъпка по стъпка ще обясним как да получите показатели за шрифтове в C#. Този урок предоставя код за получаване на показатели за шрифт Type1 в C#, но Aspose.Font for .NET, C# библиотека с шрифтове ви помага да четете показатели за шрифтове в C# от други типове шрифтове, включително формати на шрифтове TruType и OpenType.
Стъпки за получаване на показатели за шрифтове в C#
- Инсталирайте пакет Aspose.Font for .NET от NuGet.org
- Включете пространства от имена Aspose.Font, Aspose.Font.Sources и Aspose.Font.Type1
- Приложете лиценз към Aspose.Font за .NET, за да избегнете воден знак за оценка
- Заредете входния шрифт Type1 в обект FileSystemStreamSource
- Създайте обект FontFileDefinition от източника на потока
- Създайте обект FontDefinition от дефиницията на файла
- Отворете дефиницията на шрифта като Type1Font обект
- Сега вземете всички атрибути на показателите на шрифта Type1
Шрифтът съдържа информация за показатели, която помага да се опишат глифовете вътре в шрифта. Тази информация за показателите на шрифтовете помага на компютъра да се научи как да рисува знаци и изречения на екрана. Ако искаме да обработим тази информация за показатели чрез код в нашите .NET приложения, това не е лесна задача. Aspose.Font за .NET обаче помага да направите целия процес много прост и лесен, като използвате няколко стъпки, както е споменато по-горе.
Код за получаване на показатели за шрифтове в C#
using System; | |
//Add reference to Aspose.Font for .NET API | |
//Use following namespaces to get font metrics | |
using Aspose.Font; | |
using Aspose.Font.Sources; | |
using Aspose.Font.Type1; | |
namespace GetFontMetrics | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
//Set Aspose license before getting font metrics | |
//using Aspose.Font for .NET | |
Aspose.Font.License AsposeFontLicense = new Aspose.Font.License(); | |
AsposeFontLicense.SetLicense(@"c:\asposelicense\license.lic"); | |
//Load Type1 font into a file stream object & read font definition | |
FileSystemStreamSource Type1FontFileSource = new FileSystemStreamSource("SampleInputType1Font.pfb"); | |
FontFileDefinition Type1FontFileDefintion = new FontFileDefinition(Type1FontFileSource); | |
FontDefinition Type1FontDefinition = new FontDefinition(FontType.Type1, Type1FontFileDefintion); | |
//Open Type1 font | |
Type1Font InputType1Font = Font.Open(Type1FontDefinition) as Type1Font; | |
//Read font metrics information and use it for further processing | |
string FontName = InputType1Font.FontName; | |
int FontGlyphcount = InputType1Font.NumGlyphs; | |
double FontMetricsAscender = InputType1Font.Metrics.Ascender; | |
double FontMetricsDescender = InputType1Font.Metrics.Descender; | |
double FontMetricsTypoAscender = InputType1Font.Metrics.TypoAscender; | |
double FontMetricsTypoDescender = InputType1Font.Metrics.TypoDescender; | |
double FontMetricsUnitsPerEM = InputType1Font.Metrics.UnitsPerEM; | |
//display information to console in this case | |
Console.WriteLine( | |
"Font Name: {0}, " + | |
"Glyph Count: {1}, " + | |
"Asender: {2}, " + | |
"Descender: {3}, " + | |
"Typo Ascender: {4}, " + | |
"Typo Descender: {5}, " + | |
"Units Per EM: {6}", | |
FontName, | |
FontGlyphcount, | |
FontMetricsAscender, | |
FontMetricsDescender, | |
FontMetricsTypoAscender, | |
FontMetricsTypoDescender, | |
FontMetricsUnitsPerEM | |
); | |
} | |
} | |
} |
В горния код зареждаме PFB файлов формат, който съдържа нашия Type1 шрифт, който искаме да обработим в C# код. След като заредим font и го преобразуваме в обект Type1Font, можем да извлечем показателите на шрифта в C# от този файл.
Този код може да ви помогне лесно да създадете C# четец на шрифтове във вашите .NET приложения, включително приложения за уеб, десктоп, Windows и Microsoft Store.