Hogyan dolgozzunk a CFF betűtípusokkal Pythonban?
A CFF (Compact Font Format) az OpenType betűtípusok és önálló fontok körvonalas formátuma. .cff A CFF betűtípusok a következők: CffFont Az ilyen esetekben a a bázis Font az osztályra vonatkozó és a CFF-specifikus adatokat feltárja.
Lépésről lépésre szóló útmutató
1. lépés: telepítse a csomagot
pip install "aspose-font>=1.0.0"2. lépés: Importáljon a szükséges osztályokat
from aspose_font.loader import FontLoader
from aspose_font.cff.font import CffFont
from aspose_font import FontType3. lépés: Töltse be a CFF betűtípust
Hívj! FontLoader.open() A te útodhoz. .cff A visszaküldött objektum egy CffFont példány, amely a jelképek számát, betűtípus nevét és a CFF-specifikus tulajdonságait mutatja be:
font = FontLoader.open("MyFont.cff")
print(font.font_name)
print(font.num_glyphs)4. lépés: Kern párok elérése
A töltött betűtípust a CffFont, akkor hívj! get_kern_pairs() a mag páros rekordok listájának megkerítése. Nem minden CFF betűtípus tartalmaz magadatot; ellenőrizze az hosszát, mielőtt iterál:
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)}")5. lépés: CFF-t TTF-re alakítani
Át kell adnom a töltötteket. CffFont a … FontConverter.convert() a következők: FontType.TTF hogy új TtfFont a TTF-s körzet formátumban:
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)Általános problémák és megoldások
CffFont has no attribute cff_font — cff_font az ingatlan a TtfFont hogy… a CFF beágyazott adatait adja vissza, nem az alapúton. Font Az önálló CFF-fájlok használatára. CffFont - Egyenesen.
Üres mag párok Nem minden CFF betűtípus tartalmaz mag-páradatot. Ellenőrizze a len(cff_font.get_kern_pairs()) > 0 mielőtt ismétlődne.
Gyakran feltett kérdések
Mi a különbség a CffFont és a TtfFond között?
CffFont önálló CFF-fájlokat képviseli. TtfFont TTF/OTF fájlok; egy OTF. a CFF-szerkezetet beillesztheti, amely hozzáférhető az alábbiakban: ttf_font.cff_font.
Konvertálhatom a CFF betűtípust WOFF2-re?
- Igen, én is.
FontConverter.convert(font, FontType.WOFF2)- Nem. Mindenféle…Fontpéldány beleértve:CffFont.