tutorial pil para library for python python-imaging-library

python - para - Acerca del error de PIL-IOError: el decodificador zip no está disponible



pillow python tutorial (13)

Estoy obteniendo el:

IOError: decoder zip not available

cuando intento dibujar una imagen y guardarla en un jpeg en PIL. ¿Alguna idea sobre cómo resolver esto? PIL me ha funcionado bien en el pasado, cuando se trata de ver / cargar imágenes.


En Ubuntu 18 tuve que instalar pillow 2.8.1 :

pip install Pillow==2.8.1


Encontré este problema en una versión de escritorio ubuntu 13.04 de 64 bits y así es como lo resolví.

intente reinstalar PIL y preste atención a la información de salida después de reinstalar:

--------------------------------------------------------------------- PIL 1.1.7 SETUP SUMMARY -------------------------------------------------------------------- version 1.1.7 platform linux2 2.7.4 (default, Sep 26 2013, 03:20:26) [GCC 4.7.3] -------------------------------------------------------------------- *** TKINTER support not available --- JPEG support available *** ZLIB (PNG/ZIP) support not available --- FREETYPE2 support available *** LITTLECMS support not available --------------------------------------------------------------------

observe que hay una línea: *** ZLIB (PNG/ZIP) support not available , lo que significa que PIL se ha creado sin soporte ZLIB, y lo solucioné al hacer esto:

primero deberías tener estos paquetes instalados: libjpeg-dev libfreetype6-dev zlib1g-dev

sudo apt-get install python-dev libjpeg-dev libfreetype6-dev zlib1g-dev # create these links, if already exists, remove it and re-link it ln -s /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/lib ln -s /usr/lib/x86_64-linux-gnu/libfreetype.so /usr/lib ln -s /usr/lib/x86_64-linux-gnu/libz.so /usr/lib # reinstall PIL pip uninstall PIL pip install PIL

Esta vez, debería haber una línea --- ZLIB (PNG/ZIP) support available en la salida.

Referencia: http://jj.isgeek.net/2011/09/install-pil-with-jpeg-support-on-ubuntu-oneiric-64bits/


Es probable que solo necesite el decodificador zip para guardar el jpeg. Creo que necesitaba seguir estos pasos en OS X para obtener una vista previa de jpegs.

Probablemente significa que necesita:


La causa puede ser que haya instalado Pillow sin soporte zlib.

En CentOS 7:

yum install zlib zlib-devel pip install Pillow --upgrade

Y si está utilizando un webapp, reinicie su servidor web para postularse.


La forma en que arreglé esto en OS X Mavericks fue haciendo esto:

Instalar brebaje

http://brew.sh/

Instalar pip:

http://www.pip-installer.org/en/latest/installing.html

Con eso en su lugar, puedes hacer esto:

sudo brew install lzlib # installs zlib pip uninstall PIL pip install --no-index -f http://dist.plone.org/thirdparty/ -U PIL

Después de eso, funcionó bien. Para una explicación de la tercera línea, verifique esta respuesta:

https://.com/a/2486396/290072


Me encontré con el mismo problema. Me parece que la almohada y la almohada (caso diferente en ''p'') son dos paquetes diferentes. Por lo tanto, si está utilizando Pillow, la almohada pip install pillow puede no ser de ayuda. Aquí está mi solución:

$ pip uninstall pillow $ pip uninstall Pillow $ sudo apt-get install libjpeg-dev zlib1g-dev $ pip install -I Pillow

Las primeras dos líneas son para quitar cualquier almohada o paquete de almohada.

La tercera línea es instalar los dos paquetes requeridos.

Forth vuelve a instalar Pillow.

Tenga en cuenta que si está utilizando virtualenv, pip install/uninstall debe ejecutarse bajo virtualenv



Probé la versión 2.8.0, me funciona bien

pip install -Iv Pillow==2.8.0


Utilizo la versión de escritorio ubuntu 14.04LTS de 64 bits, y probé la respuesta de Johnny Zhao.
Cuando

exec sudo easy_install PIL

Recibí un error:

can''t find freetype/fterrors.h

y encuentro freetype2 en / usr / include /

Podrías resolverlo por:

sudo ln -s /usr/include/freetype2 /usr/include/freetype

entonces la instalación será exitosa


en mac

sudo brew install lzlib # installs zlib pip uninstall PIL pip install PIL



Problemas de Mac OS X PIL JEPG y PNG (lo mismo para Linux OS ), este artículo me ayudó a salir de problemas tanto PNG como JPEG con PIL: el decodificador zip no está disponible y el decodificador JPEG no está disponible

Asegúrese de que JPEG y ZLIB estén disponibles cuando instala / reinstala PIL:

$ cd Imaging-1.1.7 $ python setup.py build_ext -i $ python selftest.py -------------------------------------------------------------------- --- TKINTER support available --- JPEG support available --- ZLIB (PNG/ZIP) support available *** FREETYPE2 support not available *** LITTLECMS support not available --------------------------------------------------------------------


sudo pip uninstall PIL sudo pip install pillow

^^ lo arregló para mí.

Pillow es una horquilla de PIL que es compatible con pip / setuptools y recibe un poco más de mantenimiento. No he visto diferencias de API todavía.

Editar: hay una notable diferencia de API. PIL expone la imagen como un espacio de nombre de nivel superior, por lo que puede

import Image # in PIL only

pero

from PIL import Image # in pillow or PIL

  • Gracias, Leopd!