Ошибка при использовании ImageFont(Pillow, Termux)

Рейтинг: 0Ответов: 1Опубликовано: 20.06.2023
from PIL import ImageFont
font = ImageFont.truetype('./Fonts/Arial.ttf', size=100)

Ошибка вида:

ImportError: cannot import name '_imagingft' from 'PIL' (/data/data/com.termux/files/usr/lib/python3.11/site-packages/PIL/__init__.py)

Freetype установлен и другие зависимости тоже (libxcb, libraqm, libimagequant, openjpeg, tcl, tk, libwebp, littlecms, libtiff, zlib, libjpeg).

Pillow версии 9.5.0, Python 3.11.4.

Вест код ошибки:

Traceback (most recent call last):

  File "<stdin>", line 1, in <module>

  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/PIL/ImageFont.py", line 996, in truetype

    return freetype(font)

           ^^^^^^^^^^^^^^

  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/PIL/ImageFont.py", line 993, in freetype

    return FreeTypeFont(font, size, index, encoding, layout_engine)

           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/PIL/ImageFont.py", line 220, in __init__

    if core.HAVE_RAQM:

       ^^^^^^^^^^^^^^

  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/PIL/_util.py", line 19, in __getattr__

    raise self.ex

  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/PIL/ImageFont.py", line 58, in <module>

    from . import _imagingft as core

ImportError: cannot import name '_imagingft' from 'PIL'

Пробовал обновлять пакеты, и все зависимости. Использую версию, подходящую под Python 3.11. Не нашёл способа решить проблему.

Ответы

▲ 0

Проблема решилась простой очисткой кеша PIP:

pip cache purge