Cara Bekerja dengan Font CFF di Python
CFF (Compact Font Format) adalah format garis besar yang digunakan dalam font OpenType dan standalone .cff file. Aspose.Font FOSS mewakili font CFF sebagai CffFont kasus, yang memperpanjang dasar Font kelas dan mengekspos data khusus CFF.
Panduan Langkah-Langkah
Langkah 1: Instalasi paket
pip install "aspose-font>=1.0.0"Langkah 2: Import Kelas yang Diperlukan
from aspose_font.loader import FontLoader
from aspose_font.cff.font import CffFont
from aspose_font import FontTypeLangkah 3: Mengisi Font CFF
Call FontLoader.open() dengan jalan ke Anda .cff file. Objek yang dikembalikan adalah sebuah CffFont contoh yang mengungkapkan jumlah glyph, nama font dan sifat khusus CFF:
font = FontLoader.open("MyFont.cff")
print(font.font_name)
print(font.num_glyphs)Langkah 4: Akses Kern Pairs
Lempar font yang dimuat ke CffFont, lalu hubungi get_kern_pairs() untuk mendapatkan daftar catatan pasangan kern. Tidak semua font CFF berisi data kern; periksa panjangnya sebelum mengulang:
from aspose_font.loader import FontLoader
from aspose_font.cff.font import CffFont
cff_font: CffFont = FontLoader.open("MyFont.cff")
kern_pairs = cff_font.get_kern_pairs()
print(f"kern pairs: {len(kern_pairs)}")Langkah 5: Konversi CFF menjadi TTF
Pergilah yang penuh. CffFont ke FontConverter.convert() dengan: FontType.TTF untuk menghasilkan baru TtfFont dalam format garis besar TTF:
from aspose_font.loader import FontLoader
from aspose_font.converter import FontConverter
from aspose_font import FontType
font = FontLoader.open("MyFont.cff")
ttf = FontConverter.convert(font, FontType.TTF)Masalah dan Fixes Umum
CffFont has no attribute cff_font — cff_font adalah properti di TtfFont bahwa mengembalikan data CFF tertanam, tidak pada basis Font Untuk penggunaan file CFF mandiri. CffFont langsung.
Pasangan biji kosong Tidak semua font CFF berisi data pasangan kern. Periksa dengan len(cff_font.get_kern_pairs()) > 0 sebelum mengulang.
Pertanyaan yang sering ditanya
Apa perbedaan antara CffFont dan TtfFon?
CffFont mewakili file CFF yang mandiri. TtfFont mewakili file TTF/OTF; OTF dapat memasukkan garis besar CFF yang dapat diakses melalui: ttf_font.cff_font.
Bisakah saya mengonversi font CFF ke WOFF2?
- Ya, aku tahu.
FontConverter.convert(font, FontType.WOFF2)bekerja dengan apa punFontcontoh termasuk:CffFont.