82 votes

Python: Le _imagingft C module n'est pas installé

J'ai essayé beaucoup de solution qui a posté sur le net, ils ne travaillent pas.

>>> import _imaging
>>> _imaging.__file__
'C:\\python26\\lib\\site-packages\\PIL\\_imaging.pyd'
>>>

Pour que le système puisse trouver la _imaging, mais ne peut toujours pas utiliser les polices 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)

Génère cette erreur:

ImportError: The _imagingft C module is not installed

File "D:\Python26\Lib\site-packages\PIL\ImageFont.py", line 34, in __getattr__
  raise ImportError("The _imagingft C module is not installed")

88voto

Sindre Myren Points 498

Sur Ubuntu, vous devez avoir libfreetype-dev installé avant la compilation de la LIP.

c'est à dire

$ sudo aptitude install libfreetype6-dev
$ sudo -s # See PS!
\# pip uninstall pil
\# pip install pil # or use 'easy_install pil'

PS! L'exécution du pip désinstaller/installer avec la commande sudo n'est pas vraiment recommandé car il rend votre Ubuntu installer "sale" - mieux d'avoir tout ce qui vit sous /usr/lib/ géré par votre gestionnaire de paquets. Conciser installer Pil dans un environnement virtuel (virtualenv), dans votre répertoire home (qui est possible en utilisant les nouvelles versions de Python), ou par l'intermédiaire d'aptitude / apt-get.

EDIT: Supprimé obsolètes pip/virtualenv de la syntaxe. EDIT 2: Ajout de l'Avertissement à propos de sudo.

57voto

Imran Points 20117

Votre installés PIL a été compilé sans libfreetype.

Vous pouvez obtenir précompilés installateur de PIL (compilé avec libfreetype) ici (et beaucoup d'autres précompilés Python Modules C):

http://www.lfd.uci.edu/~gohlke/pythonlibs/

17voto

fsw Points 2078

solution pour CentOS 6 (et probablement d'autres tr / min):

yum install freetype-devel libjpeg-devel libpng-devel

pip uninstall pil Pillow
pip install pil Pillow

14voto

suzanshakya Points 709

Dans OS X, je l'ai fait pour résoudre le problème:

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

12voto

Roshambo Points 1046

Fondamentalement, vous devez installer freetype avant l'installation de la LIP.

Si vous êtes à l'aide de Homebrew sur OS X, il suffit de:

brew remove pil
brew install freetype
brew install pil

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X