Come lavorare con la gestione dei font di base in Python
Aspose.Font FOSS per Python fornisce FontLoader come punto di ingresso principale per caricare i font da percorsi di file, array di byte o stream. L’oggetto Font restituito espone metadati come nome, famiglia, stile, conteggio dei glifi e mappa di codifica.
Guida passo-passo
Passo 1: Installa il pacchetto
git clone https://github.com/aspose-font-foss/Aspose.Font-FOSS-for-Python.git
cd Aspose.Font-FOSS-for-Python
pip install -e .Passo 2: Importa le classi necessarie
from aspose_font import FontLoader
from aspose_font import TtfFontPasso 3: Carica un font da un percorso di file
Chiama FontLoader.open() con il percorso del tuo file di font. Il metodo rileva automaticamente il formato e restituisce la sottoclasse Font appropriata (TtfFont, CffFont, ecc.):
font = FontLoader.open("Roboto-Regular.ttf")
print(font.font_name)
print(font.num_glyphs)Passo 4: Accedi alle metriche del font
La proprietà Font.metrics restituisce un oggetto FontMetrics contenente ascender, descender, line gap, cap height e altre misurazioni tipografiche per il font:
from aspose_font import FontLoader
font = FontLoader.open("Roboto-Regular.ttf")
metrics = font.metrics
print(metrics)Passo 5: Converti in un altro formato
Passa il font caricato a FontConverter.convert() con il target FontType desiderato. Il metodo restituisce un nuovo oggetto font nel formato richiesto senza modificare l’originale:
from aspose_font import FontLoader
from aspose_font.converter import FontConverter # internal API — may change between releases
from aspose_font import FontType
font = FontLoader.open("Roboto-Regular.ttf")
woff2 = FontConverter.convert(font, FontType.WOFF2)Problemi comuni e soluzioni
FontType non trovato — Importa FontType dal livello superiore aspose_font pacchetto: from aspose_font import FontType.
Font has no attribute font_name — Assicurati di utilizzare un Font istanza restituita da FontLoader.open(), non un oggetto bytes grezzo.
Errori di codifica sui percorsi Windows — Passa i percorsi come stringhe grezze: r"C:\Fonts\MyFont.ttf".
Domande frequenti
Quali formati di font supporta FontLoader?
FontLoader.open() supporta TTF, OTF, CFF, Type 1, WOFF, WOFF2 e EOT.
Posso caricare un font da bytes?
Sì. FontLoader.open() accetta una stringa di percorso file, bytes o un oggetto stream tramite l’argomento source insieme a un parametro font_type esplicito.
È disponibile Font.to_bytes()?
No. Font.to_bytes(font_type) non è implementato nella classe base. Usa FontConverter.convert() per cambiare il formato, quindi utilizza i metodi di salvataggio della sottoclasse.