C# dilinde TrueType veya Type1 Yazı Tipleri için Latin Sembolleri Desteğini Kontrol Edin

Latin karakter sembolü, işaret, işaret veya kelime biçimindeki bir karakterdir. Yazı tipi, bir dizi özellik kullanılarak karakterlerin/sembollerin dijital olarak veya yazdırılabilir bir biçimde nasıl görüntüleneceğini tanımlar. Yazı tipi dosyası, yazı tipiyle ilgili tasarımı ve diğer bilgileri içerir. Belirli durumlarda, belirli bir yazı tipinin Latin sembollerini destekleyip desteklemediğini kontrol etmemiz gerekebilir. Bu yazıda, Latin sembollerinin C#’ta TrueType veya Type1 yazı tiplerini desteklemesini nasıl kontrol edeceğimizi öğreneceğiz.

Bu yazıda aşağıdaki konular ele alınacaktır:

  1. Yazı Tiplerinde Latin Sembol Desteğini Tespit Eden C# API’si
  2. C# kullanarak TrueType Yazı Tiplerindeki Latin Sembollerini Algılama
  3. C# kullanarak Type1 Yazı Tiplerindeki Latin Sembollerini Algılama

Yazı Tiplerinde Latin Sembol Desteğini Algılamak için C# API

Yazı tiplerinde Latin sembol desteğini algılamak için Aspose.Font for .NET API’sini kullanacağız. Desteklenen yazı tipi türlerinden bilgi yüklenmesine, kaydedilmesine ve çıkarılmasına olanak tanır. Lütfen API’nin DLL’sini indirin veya NuGet kullanarak kurun.

PM> Install-Package Aspose.Font

C# kullanarak TrueType Yazı Tiplerinde Latin Sembollerini Algıla

TrueType yazı tiplerindeki Latin sembollerini aşağıdaki adımları takip ederek tespit edebiliriz:

  1. İlk olarak, FontFileDefinition sınıfını kullanarak yazı tipi dosyasını yükleyin.
  2. Ardından, argüman olarak FontType (TTF) ve FontFileDefinition nesnesi ile FontDefinition sınıf nesnesini başlatın.
  3. Ardından, bağımsız değişken olarak FontDefinition nesnesiyle Font.Open() yöntemini çağırın ve TtfFont sınıf nesnesini başlatın.
  4. Bundan sonra, farklı kodlar arasında geçiş yapın ve bunların kodunu Glif kimliklerine çözün.
  5. Son olarak, Latin sembollerinin desteği için glif kimliklerini kontrol edin.

Aşağıdaki kod örneği, belirli bir TrueType yazı tipinin C# dilinde Latin sembollerini destekleyip desteklemediğinin nasıl algılanacağını gösterir.

// Bu kod örneği, belirli bir TrueType yazı tipinin Latin sembollerini destekleyip desteklemediğinin nasıl algılanacağını gösterir.
// TTF dosya yolu
string fontPath = @"D:\Files\font\Montserrat-Regular.ttf";

// Yazı tipi dosyasını yükleyin
FontFileDefinition fontFileDefinition = new FontFileDefinition("ttf", new FileSystemStreamSource(fontPath));

// Yazı tipi tanımı nesnesi
FontDefinition fd = new FontDefinition(FontType.TTF, fontFileDefinition);

// yazı tipini aç
TtfFont font = (TtfFont)Font.Open(fd);

var latinText = true;

// Latin sembollerinin desteğini kontrol edin
for (uint code = 65; code < 123; code++)
{
    GlyphId gid = font.Encoding.DecodeToGid(code);
    if (gid == null || gid == GlyphUInt32Id.NotDefId)
    {
        latinText = false;
    }
}

if (latinText)
{
    Console.WriteLine("Font {0} supports latin symbols.", font.FontName);
}
else
{
    Console.WriteLine("Latin symbols are not supported by font {0}.", font.FontName);
}

C# kullanarak Type1 Yazı Tiplerinde Latin Sembollerini Algıla

Type1 yazı tiplerindeki Latin sembollerini de aşağıda verilen adımları takip ederek tespit edebiliriz:

  1. İlk olarak, FontFileDefinition sınıfını kullanarak yazı tipi dosyasını yükleyin.
  2. Ardından, argüman olarak FontType (Type1) ve FontFileDefinition nesnesi ile FontDefinition sınıf nesnesini başlatın.
  3. Ardından, bağımsız değişken olarak FontDefinition nesnesiyle Font.Open() yöntemini çağırın ve Type1Font sınıf nesnesini başlatın.
  4. Bundan sonra, farklı kodlar arasında geçiş yapın ve bunların kodunu Glif Kimliklere dönüştürün.
  5. Son olarak, Latin sembollerinin desteği için glif kimliklerini kontrol edin.

Aşağıdaki kod örneği, belirli bir Type1 yazı tipinin C# dilinde Latin sembollerini destekleyip desteklemediğinin nasıl algılanacağını gösterir.

// Bu kod örneği, belirli bir Type1 yazı tipinin Latin sembollerini destekleyip desteklemediğinin nasıl algılanacağını gösterir.
// Type1 yazı tipi dosya yolu
string fontPath = @"D:\Files\font\courier.pfb";

// Yazı tipi dosyasını yükleyin
FontFileDefinition fontFileDefinition = new FontFileDefinition("pfb", new FileSystemStreamSource(fontPath));

// Yazı tipi tanımı nesnesi
FontDefinition fd = new FontDefinition(FontType.Type1, fontFileDefinition);

// yazı tipini aç
Type1Font font = (Type1Font)Font.Open(fd);

var latinText = true;

// Latin sembollerinin desteğini kontrol edin
for (uint code = 65; code < 123; code++)
{
    GlyphId gid = font.Encoding.DecodeToGid(code);
    if (gid == null || gid == GlyphUInt32Id.NotDefId)
    {
        latinText = false;
    }
}

if (latinText)
{
    Console.WriteLine("Font {0} supports latin symbols.", font.FontName);
}
else
{
    Console.WriteLine("Latin symbols are not supported by font {0}.", font.FontName);
}

Ücretsiz Lisans Alın

Kitaplığı değerlendirme sınırlamaları olmadan denemek için ücretsiz bir geçici lisans alabilirsiniz.

Çözüm

Bu makalede, belirli bir TrueType veya Type1 yazı tipinin C# dilinde Latin sembollerini destekleyip desteklemediğini nasıl belirleyeceğimizi öğrendik. Ayrıca belgeleri kullanarak Aspose.Font for .NET API hakkında daha fazla bilgi edinebilirsiniz. Herhangi bir belirsizlik durumunda, lütfen forumda bizimle iletişime geçmekten çekinmeyin.

Ayrıca bakınız