Λύση προβλημάτων Aspose.Font FOSS για Python
Εισαγωγικά λάθη
ModuleNotFoundError: No module named 'aspose_font'
Το πακέτο δεν είναι εγκατεστημένο στο ενεργό περιβάλλον Python. Εγκαταστήστε το:
pip install "aspose-font>=1.0.0"Βεβαιωθείτε ότι εγκαταστήσετε στο σωστό εικονικό περιβάλλον εάν χρησιμοποιείτε ένα.
ImportError: cannot import name 'FontType' from 'aspose_font'
FontType Εξαγωγή από το ανώτερο επίπεδο. aspose_font Ετικέτες Χρησιμοποιήστε:
from aspose_font import FontType # correctΑν δείτε αυτό το λάθος, επιβεβαιώστε ότι έχετε aspose-font>=1.0.0 Εισάγονται στο ενεργό περιβάλλον σας.
Λάθος φόρτισης
FontLoadException Όταν καλείται FontLoader.open()
Πιθανές αιτίες :
- Το αρχείο είναι λάθος ή το αρχείου δεν υπάρχει.
- Το αρχείο είναι διαφθορά ή έχει μη τυποποιημένο επικεφαλής
- Έχετε περάσει ένα αντικείμενο bytes που δεν είναι έγκυρη γραμματοσειρά
Ελέγξτε το αρχείο υπάρχει πριν φορτίσετε:
import os
from aspose_font.loader import FontLoader
path = "MyFont.ttf"
if not os.path.exists(path):
raise FileNotFoundError(path)
font = FontLoader.open(path)Windows Path Backslash Προβλήματα
Χρησιμοποιήστε πρώτες γραμμές ή προκαταρκτικές στροφές στα Windows:
font = FontLoader.open(r"C:\Fonts\MyFont.ttf")
# or
font = FontLoader.open("C:/Fonts/MyFont.ttf")Αρνητικά λάθη
AttributeError: 'Font' object has no attribute 'ttf_tables'
ttf_tables Είναι ιδιοκτησία σε TtfFont,Όχι η βάση Font Χρησιμοποιήστε ένα είδος αναφοράς:
from aspose_font.ttf.font import TtfFont
ttf_font: TtfFont = FontLoader.open("MyFont.ttf")
tables = ttf_font.ttf_tablesNotImplementedError Από την Font.to_bytes()
Font.to_bytes() Αύξηση NotImplementedError Μόνο όταν καλείται στην αφηρημένη βάση τάξη. Όλες οι κατηγορίες ετικέτες (TtfFont, CffFont, WoffFont, Woff2Font,ΠΕΡΙΟΔΟΣ) ΕΠΙΤΡΟΦΗ to_bytes() και επιστρέψτε τα bytes γραμματοσειράς. αν καλέσετε FontLoader.open() Έχεις ένα συγκεκριμένο ΕΡΓΑΣΙΑ - ΚΛΗΜΟΣ to_bytes() Εξάλλου, ή χρησιμοποιώντας FontConverter.convert() Αλλαγή μορφής πρώτα:
from aspose_font.converter import FontConverter
from aspose_font import FontType
woff2 = FontConverter.convert(font, FontType.WOFF2)