Python: модуль imagingft C не установлен
Я пробовал много решений, которые размещены в сети, они не работают.
>>> import _imaging
>>> _imaging.__file__
'C:python26libsite-packagesPIL_imaging.pyd'
>>>
таким образом, система может найти _imaging, но все еще не может использовать шрифт truetype
from PIL import Image, ImageDraw, ImageFilter, ImageFont
im = Image.new('RGB', (300,300), 'white')
draw = ImageDraw.Draw(im)
font = ImageFont.truetype('arial.ttf', 14)
draw.text((100,100), 'test text', font = font)
выдает эту ошибку:
ImportError: The _imagingft C module is not installed
File "D:Python26Libsite-packagesPILImageFont.py", line 34, in __getattr__
raise ImportError("The _imagingft C module is not installed")
14 ответов:
ваш установленный PIL был скомпилирован без libfreetype.
вы можете получить предварительно скомпилированный установщик PIL (скомпилированный с libfreetype) здесь (и многие другие предварительно скомпилированные модули Python C):
в Ubuntu перед компиляцией PIL необходимо установить libfreetype-dev.
т. е.
$ sudo apt-get install libfreetype6-dev $ sudo -s \# pip uninstall pil \# pip install pilPS! Запуск pip install as sudo обычно устанавливает пакеты в /usr/local / lib на большинстве версий Ubuntu. Вместо этого вы можете установить Pil в виртуальной среде (virtualenv или venv) по пути, принадлежащему пользователю.
вы также можете рассмотреть возможность установки подушки вместо pil, которая, как я считаю, совместима с API: https://python-pillow.org.
следующие работал для меня на Ubuntu 14.04.1 64 бит:
sudo apt-get install libfreetype6-devзатем, в virtualenv:
pip uninstall pillow pip install --no-cache-dir pillow
решение для CentOS 6 (и, вероятно, на основе других оборотов в минуту):
yum install freetype-devel libjpeg-devel libpng-devel pip uninstall pil Pillow pip install pil Pillow
в OS X, я сделал это, чтобы решить проблему:
pip uninstall PIL ln -s /usr/X11/include/freetype2 /usr/local/include/ ln -s /usr/X11/include/ft2build.h /usr/local/include/ ln -s /usr/X11/lib/libfreetype.6.dylib /usr/local/lib/ ln -s /usr/X11/lib/libfreetype.6.dylib /usr/local/lib/libfreetype.dylib pip install PIL
в принципе, вам нужно установить freetype перед установкой PIL.
Если вы используете доморощенного на OS X это просто вопрос:
brew remove pil brew install freetype brew install pil
работал на Ubuntu 12.10:
sudo pip uninstall PIL sudo apt-get install libfreetype6-dev sudo apt-get install python-imaging
для OS X (я запускаю 10.6, но должен работать для других) я смог обойти эту ошибку, используя совет от этот пост. В основном вам нужно установить пару зависимостей, а затем переустановить PIL.
для меня ни одно из решений, опубликованных здесь до сих пор работал. Я нашел другое решение здесь:http://codeinthehole.com/writing/how-to-install-pil-on-64-bit-ubuntu-1204/
Сначала установите пакеты dev:
$ sudo apt-get install python-dev libjpeg-dev libfreetype6-dev zlib1g-devзатем создайте некоторые символические ссылки:
$ sudo ln -s /usr/lib/`uname -i`-linux-gnu/libfreetype.so /usr/lib/ $ sudo ln -s /usr/lib/`uname -i`-linux-gnu/libjpeg.so /usr/lib/ $ sudo ln -s /usr/lib/`uname -i`-linux-gnu/libz.so /usr/lib/после этого PIL должен компилироваться просто отлично:
$ pip install PIL --upgrade
следующие работы на ubuntu 12.04:
pip uninstall PIL apt-get install libjpeg-dev apt-get install libfreetype6-dev apt-get install zlib1g-dev apt-get install libpng12-dev pip install PIL --upgradeкогда вы видите "-- поддержка JPEG доступна", это означает, что он работает.
но, если он все еще не работает при редактировании изображения jpeg, проверьте путь python!!
Мой питон путь пропустил'/usr/local/lib/python2.7/dist-packages/PIL-1.1.7-py2.7-linux-x86_64.egg/', поэтому я редактирую~/.bashrcдобавьте в этот файл следующий код:export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/dist-packages/PIL-1.1.7-py2.7-linux-x86_64.egg/потом, наконец, это работает!!
Я использовал homebrew для установки freetype, и у меня есть следующее в /usr / local / lib:
libfreetype.6.dylib libfreetype.один libfreetype.dylib нужна
но обычно:
pip install pil
не работает для меня, поэтому я использовал:
pip install http://effbot.org/downloads/Imaging-1.1.6.tar.gz
в моем Mac, следующие шаги в терминале работает:
$ brew install freetype $ sudo pip uninstall pil $ sudo pip install pillowнадеется, что это работает для вас. Удачи вам!
Ubuntu 11.10 устанавливает библиотеки zlib и freetype2, следуя спецификации multi-arch (например,
/usr/lib/i386-linux-gnu). Вы можете использовать переменные среды установки PIL, чтобы он мог их найти. Однако он работает только на версиях PIL за пределами тега pil-117.export PIL_SETUP_ZLIB_ROOT=/usr/lib/i386-linux-gnu export PIL_SETUP_FREETYPE_ROOT=/usr/lib/i386-linux-gnu pip install -U PILпоскольку ваш путь с несколькими арками может быть другим (x86-64), предпочтительно установить
-devпакеты и использоватьpkg-configдля получения правильного пути.pkg-config --variable=libdir zlib pkg-config --variable=libdir freetype2еще один способ, Данный Барри на подушке setup.py это использовать
dpkg-architecture -qDEB_HOST_MULTIARCHчтобы получить правильный суффикс каталога библиотеки.
【решена】
В моем ubuntu12.04, после того, как я установил python-imaging с помощью apt-get, он работает.
Comments