Python'da TTF Fonts ile Nasıl Çalışılır

Python'da TTF Fonts ile Nasıl Çalışılır

Bu rehber TTF yazı tiplerini nasıl yüklediğini gösterir, kontrol eder TtfFont Özellikler, okuma tablosu, anlık değişken yazı tipleri ve Python için Aspose.Font FOSS kullanarak diğer biçimlere dönüştürme..ttf) en yaygın yazı tipi biçimidir. Aspose.Font FOSS bunları yüklüyor TtfFont örnekler, tablolar, değişken yazı tipi eksenleri, glyph verileri ve dönüşüm araçları erişim sağlar.

Adım adım rehberlik

Adım 1: Paket yükleme

PIP’den Aspose.Font FOSS paketini aşağıdaki pip komutunu kullanarak yükleme:

pip install "aspose-font>=1.0.0"

Adım 2: Gerekli sınıflar ithal etmek

Import FontLoader ve TtfFont TTF yazı tipi yüklemek ve yazılı özelliklerine erişmek için:

from aspose_font.loader import FontLoader
from aspose_font.ttf.font import TtfFont

Adım 3: TTF yazı tipi yükleme ve kontrol edin

TTF dosyasını kullanarak yükleme FontLoader.open() ve isim, aile ve glyph sayımı gibi temel özellikleri okuyun:

ttf_font: TtfFont = FontLoader.open("Roboto-Regular.ttf")
print(ttf_font.font_name)
print(ttf_font.font_family)
print(ttf_font.num_glyphs)

Adım 4: Kern Tablosu okuyun

Access ile ttf_tables mülkiyet ve çekirdek tablosunun varlığı için kontrol:

ttf_font: TtfFont = FontLoader.open("Roboto-Regular.ttf")
kern = ttf_font.ttf_tables.kern
print("kern present:", kern is not None)

5. Adım: Değişken bir yazı tipi başlatın

Değişken bir yazı tipi dosyasını yükleme, kontrol edin is_variable,ve çağrısı instantiate() statik bir örnek üretmek için bir eksen sözlüğü ile:

from aspose_font.loader import FontLoader
from aspose_font.ttf.font import TtfFont

ttf_font: TtfFont = FontLoader.open("Roboto-VariableFont_wdth,wght.ttf")
if ttf_font.is_variable:
    static = ttf_font.instantiate({"wght": 700.0})
    print("Instantiated:", static.font_name)

Adım 6: WOFF2’ye dönüştürün

Yüklü bir TTF yazı tipi WOFF2 biçiminde dönüştürün geçerek FontType.WOFF2 için FontConverter.convert():

from aspose_font.loader import FontLoader
from aspose_font.converter import FontConverter
from aspose_font import FontType

font = FontLoader.open("Roboto-Regular.ttf")
woff2 = FontConverter.convert(font, FontType.WOFF2)

Toplam Sorunlar ve Çözümler

AttributeError: Font has no attribute ttf_tables - Kullanım ttf_font: TtfFont = FontLoader.open(...). O zamanlar ttf_tables Mülkiyet üzerinde TtfFont,Temel değil Font.

is_variable değişken bir yazı tipi üzerinde yanlıştır. Bazı değişken yazı tipleri standart olmayan bir yazı tipi kullanır. fvar Tablo Formatı - Kontrolü ttf_font.fvar is not None Alternatif olarak.

instantiate() Yükseliş KeyError - As etiketinin kayıtlı 4 çerçeve etkisine sahip olması gerekir. (Örneğin g. "wght", "wdth") kontrol etmek ttf_font.axes Mevcut etiketler için.

Sıkça Sorulan Sorular

TTF ve OTF arasındaki fark nedir?

OTF ve TTF aynı ikili konteyner (SFNT) paylaşır. OT Fonksiyonlar genellikle CFF çıkışları kullanır TTF yazı tipleri TrueType çeyrek eğriler kullanırken. her ikisi de yüklü FontLoader.open().

Bir TTF yazı tipi ile çekirdek çiftleri alabilir miyim?

Evet Kullanım TtfFont.get_kern_pairs() Bir listeyi almak için KernPair nesneler için.

Kütüphane yazı tipi koleksiyonları (.ttc) destekliyor mu?

Evet Kullanım FontLoader.open(source, collection_index=N) belirli bir yazı tipi seçmek için TTC dosyası ile ilgili.

See Also

 Türkçe