قراءة معلومات الخط
.NET API Solution للحصول على معلومات الخط والمقاييس.
Aspose.Font API Solution لديه وظائف غنية للعمل مع الخطوط. التحويل ، والتلاعب بالصور الرمزية ، والكشف عن الرموز اللاتينية ، وغير ذلك الكثير. ترتبط بعض الميزات بالتلاعب باستخدام الحروف الرسومية مثل الحصول على معلومات حول الصور الرمزية الموجودة في الخط.
الحرف الرسومي هو حرف مصمم بشكل فردي لمحرف أو تمثيل رسومي لرمز / حرف. لمعرفة المزيد حول وحدة الخطوط هذه ، اقرأ مقالة مقدمة إلى Glyph .
تصف هذه الصفحة الخيار الخاص بكيفية الحصول على مقاييس خط مختلفة (عدد الحروف الرسومية ، ارتفاع الحرف ، عرض الحرف الرسومي ‘A’ ، إلخ) ولكن تم وصف الوظيفة بالكامل بعناية في استخدام كائنات Glyph مقالة. يتضمن هذا المثال أيضًا جزءًا من التعليمات البرمجية للحصول على البيانات الوصفية للخط ، واسم الخط إذا كان محددًا. يمكن تنفيذ هذه الوظيفة في برامج الويب مثل تطبيق Font Metadata الذي تمتلكه Aspose في نظامها البيئي.
لتلقي مقاييس الخط التي نحتاجها:
Aspose.Font لـ .NET API وهي واجهة برمجة تطبيقات لمعالجة المستندات وتحويلها غنية بالميزات وقوية وسهلة الاستخدام لمنصة C#.
افتح مدير الحزم NuGet ، وابحث عن Aspose.Font وقم بالتثبيت. يمكنك أيضًا استخدام الأمر التالي من Package Manager Console.
Package Manager Console Command
PM> Install-Package Aspose.Font
خطوات الحصول على مقاييس الخط باستخدام C#:
- حدد الخط لاستخراج المعلومات منه.
- استخدم واجهة Aspose.Font.IFontMetrics للحصول على المقاييس المحددة.
- احصل على جدول تشفير cmap Unicode من الخط ككائن TtfCMapFormatBaseTable للوصول إلى معلومات حول الصورة الرمزية للخط المطلوب.
- للحصول على فهرس الصورة الرمزية للرمز ‘A’ ، استخدم طريقة GetGlyphIndex() .
- احصل على مقاييس الصورة الرمزية مطبوعة.
كود C# للحصول على معلومات حول الحروف الرسومية للخط
using Aspose.Font;
using Aspose.Font.Glyphs;
using Aspose.Font.Ttf;
//Font to extract info from
TtfFont font;
string name = font.FontName;
Console.WriteLine("Font name: " + name);
Console.WriteLine("Glyph count: " + font.NumGlyphs);
string metrics = string.Format(
"Font metrics: ascender - {0}, descender - {1}, typo ascender = {2}, typo descender = {3}, UnitsPerEm = {4}",
font.Metrics.Ascender, font.Metrics.Descender,
font.Metrics.TypoAscender, font.Metrics.TypoDescender, font.Metrics.UnitsPerEM);
Console.WriteLine(metrics);
//Get the cmap unicode encoding table from the font as an object TtfCMapFormatBaseTable to access information about the font glyph for symbol 'A'.
//Also check that font has the object TtfGlyfTable (table 'glyf') to access glyph.
Aspose.Font.TtfCMapFormats.TtfCMapFormatBaseTable cmapTable = null;
if (font.TtfTables.CMapTable != null)
{
cmapTable = font.TtfTables.CMapTable.FindUnicodeTable();
}
if (cmapTable != null && font.TtfTables.GlyfTable != null)
{
Console.WriteLine("Font cmap unicode table: PlatformID = " + cmapTable.PlatformId + ", PlatformSpecificID = " + cmapTable.PlatformSpecificId);
//Code for 'A' symbol
char unicode = (char)65;
//Glyph index for 'A'
uint glIndex = cmapTable.GetGlyphIndex(unicode);
if (glIndex != 0)
{
//Glyph for 'A'
Glyph glyph = font.GetGlyphById(glIndex);
if (glyph != null)
{
//Print glyph metrics
Console.WriteLine("Glyph metrics for 'A' symbol:");
string bbox = string.Format(
"Glyph BBox: Xmin = {0}, Xmax = {1}" + ", Ymin = {2}, Ymax = {3}",
glyph.GlyphBBox.XMin, glyph.GlyphBBox.XMax,
glyph.GlyphBBox.YMin, glyph.GlyphBBox.YMax);
Console.WriteLine(bbox);
Console.WriteLine("Width:" + font.Metrics.GetGlyphWidth(new GlyphUInt32Id(glIndex)));
}
}
}
التعليمات
1. ما هو مقياس الخط؟
إنها الخاصية التي تحدد طريقة عرض الخط على الشاشة. بعض المقاييس مثل الصعود والنزول والعرض وتقنين الأحرف تشبه مقاييس الصورة الرمزية .
2. كيف أحصل على مقاييس الخط؟
حدد الخط الذي تريد العمل معه. باستخدام خصائص واجهة Aspose.Font.IFontMetrics Class ، استخرج المعلومات حول مقاييس الخط التي تحتاجها.
3. ما هي البيانات الوصفية للخط؟
البيانات الوصفية للخط هي في الأساس معلومات عنها. يتضمن العديد من البيانات مثل اسم الخط واسم عائلة الخط واسم التذييل والترخيص ومعلومات المؤلف والمصمم وغير ذلك الكثير.
4. كيف أقوم بتغيير البيانات الوصفية للخط؟
للاطلاع على معلومات الخط أو تغييرها عبر الإنترنت ، استخدم تطبيق Font Metadata .