Felsökning Aspose.Font FOSS for Python

Felsökning Aspose.Font FOSS for Python

Importfel

ModuleNotFoundError: No module named 'aspose_font'

Paketet är inte installerat i den aktiva Python-miljön. Installera det:

git clone https://github.com/aspose-font-foss/Aspose.Font-FOSS-for-Python.git
cd Aspose.Font-FOSS-for-Python
pip install -e .

Se till att du installerar i rätt virtuell miljö om du använder en.

ImportError: cannot import name 'FontType' from 'aspose_font'

FontType exporteras från top-nivå aspose_font-paketet. Använd:

from aspose_font import FontType  # correct

Om du ser detta fel, bekräfta att du har aspose-font>=1.0.0 installerat i din aktiva miljö.


Fel vid inläsning av teckensnitt

FontLoadException när du anropar FontLoader.open()

Möjliga orsaker:

  • Filsökvägen är felaktig eller så finns filen inte
  • Filen är skadad eller har ett icke-standardiserat huvud
  • Du skickade ett bytes-objekt som inte är ett giltigt teckensnitt

Kontrollera att filen finns innan du laddar:

import os
from aspose_font import FontLoader

path = "MyFont.ttf"
if not os.path.exists(path):
    raise FileNotFoundError(path)
font = FontLoader.open(path)

Problem med bakåtsnedstreck i Windows-sökvägar

Använd råa strängar eller framåtsnedstreck på Windows:

font = FontLoader.open(r"C:\Fonts\MyFont.ttf")
# or
font = FontLoader.open("C:/Fonts/MyFont.ttf")

API fel

AttributeError: 'Font' object has no attribute 'ttf_tables'

ttf_tables är en egenskap på TtfFont, inte på basklassen Font. Använd en typannotation:

from aspose_font import TtfFont
ttf_font: TtfFont = FontLoader.open("MyFont.ttf")
tables = ttf_font.ttf_tables

NotImplementedError från Font.to_bytes()

Font.to_bytes(font_type) kastar NotImplementedError endast när den anropas på den abstrakta basklassen. Alla konkreta teckensnittsklasser (TtfFont, CffFont, WoffFont, Woff2Font, osv.) implementerar to_bytes() och returnerar teckensnittsbitarna. Om du anropar FontLoader.open() får du en konkret instans — anropa to_bytes() direkt, eller använd FontConverter.convert() för att först ändra formatet:

from aspose_font.converter import FontConverter  # internal API — may change between releases
from aspose_font import FontType

woff2 = FontConverter.convert(font, FontType.WOFF2)

Se även

 Svenska