Jak uzyskać metryki czcionek w C#

W tym przewodniku krok po kroku wyjaśnimy, jak uzyskać metryki czcionek w języku C#. Ten samouczek zawiera kod umożliwiający pobranie metryk czcionek Type1 w języku C#, ale Aspose.Font for .NET, biblioteka czcionek języka C# ułatwia odczytywanie metryk czcionek w języku C# z innych typów czcionek, w tym formatów czcionek TruType i OpenType.

Kroki, aby uzyskać metryki czcionek w języku C#

  1. Zainstaluj pakiet Aspose.Font for .NET z NuGet.org
  2. Uwzględnij przestrzenie nazw Aspose.Font, Aspose.Font.Sources i Aspose.Font.Type1
  3. Zastosuj licencję do Aspose.Font dla .NET, aby uniknąć oceny znaku wodnego
  4. Załaduj wejściową czcionkę Type1 do obiektu FileSystemStreamSource
  5. Utwórz obiekt FontFileDefinition ze źródła strumienia
  6. Utwórz obiekt FontDefinition z definicji pliku
  7. Otwórz definicję czcionki jako obiekt Type1Font
  8. Teraz uzyskaj wszystkie atrybuty metryki czcionki Type1

Czcionka zawiera informacje o metrykach, które pomagają opisać glify wewnątrz czcionki. Te metryki czcionek pomagają komputerowi nauczyć się rysować znaki i zdania na ekranie. Jeśli chcemy przetwarzać te informacje o metrykach za pomocą kodu w naszych aplikacjach .NET, nie jest to łatwe zadanie. Jednak Aspose.Font dla .NET pomaga uczynić cały proces bardzo prostym i łatwym, wykonując kilka kroków, jak wspomniano powyżej.

Kod do pobierania metryk czcionek w języku 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
);
}
}
}

W powyższym kodzie ładujemy plik w formacie PFB, który zawiera naszą czcionkę Type1, którą chcemy przetworzyć w kodzie C#. Po załadowaniu font i przekonwertowaniu go na obiekt Type1Font, możemy wyodrębnić metryki czcionek w języku C# z tego pliku.

Ten kod może pomóc w łatwym utworzeniu czytnika czcionek C# w aplikacjach .NET, w tym w aplikacjach internetowych, komputerowych, Windows i Microsoft Store.

 Polski