2014-02-13 40 views
1

我试图打开一个图像,并使用调整其PIL:Django的PIL:无法识别图像文件

 kids = family.kids.all() 
    for kid in kids: 
      pictureIO = StringIO.StringIO(kid.image_url) 
      pictureIO.seek(0) 
      im = PIL.Image.open(pictureIO) 
      wpercent = (300/float(im.size[0])) 
      hsize = int((float(im.size[1])*float(wpercent))) 
      im = im.resize((300,hsize), PIL.Image.ANTIALIAS) 

但它给我的错误:

cannot identify image file 

kid.image_url是:

/media/proj/proj/kid1.jpg 

回溯:

    im = PIL.Image.open(kid.image_url) 

我该如何解决这个问题?提前致谢。

回答

0

StringIO需要一个文件对象,而不是文件名。只要做到:

f = open(kid.image_url) 
pictureIO = StringIO.StringIO(f) 
+0

thanx的帮助,我想这一点,但回报:没有这样的文件或目录:'/media/proj/proj/kid1.jpg' – user2618465

+1

on f = open(kid.image_url) – user2618465

0
BufferedImage originalImage = ImageIO.read(new File("/home/sithamparam/Desktop/12.jpg")); 
int type = originalImage.getType() == 0 ? BufferedImage.TYPE_INT_ARGB:originalImage.getType(); 
BufferedImage resizeImageJpg = resizeImage(originalImage, type); 
ImageIO.write(resizeImageJpg, "jpg", new File("/home/sithamparam/Desktop/12.jpg")); 
+0

问题出在Python中。你的答案是Java。 – cryptochronoconolite

相关问题