نحوه دریافت متریک فونت در سی شارپ

در این راهنمای گام به گام، نحوه دریافت متریک فونت در سی شارپ را توضیح خواهیم داد. این آموزش کدی را برای دریافت معیارهای فونت Type1 در C# ارائه می‌کند، اما Aspose.Font for .NET، یک کتابخانه فونت C# به شما کمک می‌کند متریک‌های فونت را در سی شارپ از سایر انواع فونت‌ها و همچنین از جمله قالب‌های فونت TruType و OpenType بخوانید.

مراحل دریافت متریک فونت در سی شارپ

  1. بسته Aspose.Font for .NET را از NuGet.org نصب کنید
  2. شامل فضاهای نام Aspose.Font، Aspose.Font.Sources و Aspose.Font.Type1
  3. برای جلوگیری از ارزیابی واترمارک، مجوز Aspose.Font را برای دات نت اعمال کنید
  4. فونت Type1 ورودی را در شیء FileSystemStreamSource بارگیری کنید
  5. یک شیء FontFileDefinition از منبع جریان ایجاد کنید
  6. یک شیء FontDefinition از تعریف فایل ایجاد کنید
  7. تعریف فونت را به عنوان شیء Type1Font باز کنید
  8. اکنون، تمام ویژگی های متریک فونت Type1 را دریافت کنید

یک فونت حاوی اطلاعات معیارهایی است که به توصیف گلیف های داخل یک فونت کمک می کند. این اطلاعات متریک فونت ها به رایانه کمک می کند تا یاد بگیرد که چگونه کاراکترها و جملات را روی صفحه بکشد. اگر بخواهیم این اطلاعات معیارها را از طریق کد در برنامه های دات نت خود پردازش کنیم، کار آسانی نیست. با این حال، Aspose.Font برای دات نت کمک می کند تا کل فرآیند با استفاده از چند مرحله همانطور که در بالا ذکر شد، بسیار ساده و آسان شود.

کد برای دریافت متریک فونت در سی شارپ

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# را به راحتی در برنامه های دات نت خود از جمله برنامه های وب، دسکتاپ، ویندوز و مایکروسافت استور ایجاد کنید.

 فارسی