Устранение неисправностей Aspose.Words 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()
Возможные причины:
- Путь файла неверен или файл отсутствует .
- Файл поврежден или имеет нестандартный заголовок .
- Вы прошли объект байтов , который не является действительным шрифтом .
Перед загрузкой проверьте , что файл существует:
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
Использовать строки или скрещенные черты в Windows:
font = FontLoader.open(r"C:\Fonts\MyFont.ttf")
# or
font = FontLoader.open("C:/Fonts/MyFont.ttf")Ошибки API
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() и вернуть байты шрифта. Если вы звоните FontLoader.open() Вы получаете бетонный вызов to_bytes() непосредственно или использовать FontConverter.convert() изменить формат сначала:
from aspose_font.converter import FontConverter
from aspose_font import FontType
woff2 = FontConverter.convert(font, FontType.WOFF2)