【发布时间】:2020-05-31 17:32:54
【问题描述】:
我想使用 PIL 库裁剪我的图像文件并使用 Flask 和 Jinja 显示它。
我试过这段代码:
@bp.route('/media/<fname>')
def fetch_media(fname):
...
image = Image.open(path)
cropped_image = image.crop(box)
return cropped_image
这给出了一个类型错误:
视图函数未返回有效响应。返回类型 必须是字符串、字典、元组、响应实例或可调用的 WSGI, 但它是一个图像。
如何将图像返回到 html 页面?
【问题讨论】:
-
不在计算机上,但您需要将
PNG类型的cropped_image.save()放入BytesIO 对象,然后返回bytesio.getvalue()的Response,MIME 类型为image/png -
您可以在此处查看将图像保存到内存的 BytesIO 方面...stackoverflow.com/a/52281257/2836621
标签: jinja2 python-imaging-library