Σε αυτόν τον οδηγό βήμα προς βήμα, θα εξηγήσουμε πώς να λαμβάνετε μετρήσεις γραμματοσειράς σε 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, συμπεριλαμβανομένων των εφαρμογών web, επιτραπέζιων υπολογιστών, Windows και Microsoft Store.