我已成功在我的盒式磁带(Python 2.7)中安装了PIL和reportlab,并在控制台中通过ssh对它们进行了测试。
不知何故,reportlab无法使用PIL。
我也尝试下载PIL并修复64位问题,但我仍然收到错误。
这是我收到的信息:
unpack requires a string argument of length 1
Imaging Library not available, unable to import bitmaps only jpegs
fileName='/var/lib/openshift/52c1ab8de0b8cdb8a1000177/app-root/runtime/repo/wsgi/static/images/logo_colegio.png' identity=[ImageReader@0x7f6206c29c10 filename='/var/lib/openshift/52c1ab8de0b8cdb8a1000177/app-root/runtime/repo/wsgi/static/images/logo_colegio.png']
fileName='/var/lib/openshift/52c1ab8de0b8cdb8a1000177/app-root/runtime/repo/wsgi/static/images/logo_colegio.png' identity=[ImageReader@0x7f6206c29c10 filename='/var/lib/openshift/52c1ab8de0b8cdb8a1000177/app-root/runtime/repo/wsgi/static/images/logo_colegio.png']
我查找了代码,发现这是抛出异常的地方:
if haveImages:
#detect which library we are using and open the image
if not self._image:
self._image = self._read_image(self.fp)
if getattr(self._image,'format',None)=='JPEG':
self.jpeg_fh = self._jpeg_fh
else:
from reportlab.pdfbase.pdfutils import readJPEGInfo
try:
self._width,self._height,c=readJPEGInfo(self.fp)
except:
annotateException('\nImaging Library not available, unable to import
bitmaps only jpegs\nfileName=%r identity=%s'%(fileName, self.identity()))
只有在“haveImages”为False时才会引发。奇怪的是,我使用控制台打印reportlab.util.haveImage并获得“True”
我的想法已经用完了......有没有人遇到过这样的情况? 任何想法将不胜感激!!
PD:当我尝试使用addFromList()((Platypus))将图像添加到Frame时会发生这种情况
答案 0 :(得分:0)
对于任何有这个问题的人:
问题是只是无法在64位系统上正确安装。 编辑安装文件并不难。 手动安装PIL后重启应用程序非常重要