Yazı tipi bilgilerini oku

Yazı tipi bilgilerini ve ölçümlerini almak için .NET API Çözümü.

 

Aspose.Font API Solution, fontlarla çalışmak için zengin bir işlevselliğe sahiptir. Dönüştürme, glif manipülasyonları, Latin sembollerinin tespiti ve çok daha fazlası. Bazı özellikler, yazı tipinde bulunan glifler hakkında bilgi almak gibi gliflerle yapılan işlemlerle bağlantılıdır.

Bir glif, bir yazı tipinin ayrı ayrı tasarlanmış bir karakteri veya bir sembolün/karakterin grafiksel bir temsilidir. Bu yazı tipi birimi hakkında daha fazla bilgi edinmek için Glif’e Giriş makalesini okuyun.

Bu sayfada, farklı yazı tipi metriklerinin (glif sayısı, harf yüksekliği, ‘A’ glifinin genişliği, vb.) nasıl elde edileceğine ilişkin seçenek açıklanmaktadır, ancak tüm işlevsellik Glif nesnelerini kullanma makalesi. Bu örnek ayrıca, yazı tipi meta verilerini, özel olması halinde yazı tipi Adını almak için kodun bir bölümünü de içerir. Bu tür işlevsellik, Aspose’un ekosisteminde bulunan Font Metadata uygulaması gibi web yazılımlarına uygulanabilir.

Yazı tipi ölçümlerini almak için ihtiyacımız olan:

  • C# platformu için zengin özelliklere sahip, güçlü ve kullanımı kolay bir belge işleme ve dönüştürme API'si olan Aspose.Font for .NET API.

  • NuGet paket yöneticisini açın ve Aspose.Font'u arayın ve kurun. Paket Yöneticisi Konsolundan aşağıdaki komutu da kullanabilirsiniz.

Package Manager Console Command


    PM> Install-Package Aspose.Font

C# kullanarak yazı tipi ölçümleri alma adımları:

  1. Bilgilerin çıkarılacağı yazı tipini belirtin.
  2. Belirtilen metrikleri almak için bir arayüz Aspose.Font.IFontMetrics kullanın.
  3. Gerekli yazı tipi glifiyle ilgili bilgilere erişmek için cmap Unicode kodlama tablosunu yazı tipinden nesne TtfCMapFormatBaseTable olarak alın.
  4. ‘A’ sembolü için glif indeksini almak için GetGlyphIndex() Yöntemini kullanın.
  5. Glif ölçümlerini yazdırın.

Yazı tipinin glifleri hakkında bilgi almak için C# Kodu

    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)));
            }
        }
    }



SSS

1. Yazı tipi ölçüsü nedir?

Yazı tipinin ekranda nasıl görüneceğini belirleyen özelliktir. Yükselme, alçalma, genişlik ve karakter aralığı gibi bazı metrikler Glif metriklerine benzer.

2. Yazı tipi ölçümlerini nasıl alabilirim?

Çalışmak istediğiniz yazı tipini belirtin. Aspose.Font.IFontMetrics Class arayüzünün özelliklerini kullanarak ihtiyacınız olan font metrikleri hakkındaki bilgileri çıkarın.

3. Yazı tipi meta verileri nedir?

Yazı Tipi Meta Verisi, temel olarak onunla ilgili bilgilerdir. Font Adı, Font Ailesi Adı, Postscript Adı, lisanslama, yazar ve tasarımcı bilgileri ve çok daha fazlasını içerir.

4. Yazı tipi meta verilerini nasıl değiştiririm?

Yazı tipi bilgilerini çevrimiçi olarak görmek veya değiştirmek için Yazı Tipi Meta Verileri uygulamamızı kullanın.