簡體   English   中英

Django PIL:無法識別圖像文件

[英]Django PIL: cannot identify image file

我正在嘗試打開圖像並使用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)

我該如何解決? 提前致謝。

StringIO需要文件對象,而不是文件名。 做就是了:

f = open(kid.image_url)
pictureIO = StringIO.StringIO(f)
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"));

URL與“網站”相關。 使用“ kid.image.path”。 (我不知道您的image_url是如何填充的,但我認為“ /”基於Web根目錄,而不是驅動器的根目錄)

https://docs.djangoproject.com/en/dev/topics/files/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM