gpt4 book ai didi

python - 渲染图像而不保存

转载 作者:行者123 更新时间:2023-12-04 12:01:43 25 4
gpt4 key购买 nike

我想从用户那里获取图像,在 beckend 使用它并将结果呈现给用户。是否可以不将图像保存在磁盘上?

我的看法:

class InputImageForm(forms.Form):
image = forms.ImageField()


def get_image(request):
if request.method == 'POST':
form = InputImageForm(request.POST, request.FILES)
if form.is_valid():
image = request.FILES['image']
#some actions with image
return render_to_response('results.html', {'image': image})
else:
form = InputImageForm()
else:
raise Http404

在模板中,标签 {{ image }} 返回文件名。

最佳答案

问题在于,向用户返回页面通常会涉及两个请求:一个针对 HTML 页面,另一个针对该 HTML 中的 img 标记所引用的图像本身。但是正如您所说,如果同时不将其存储在任何地方,图像就会丢失。

还有一种选择:您可以使用 data uri在 html 中包含内联图像的实际数据。这意味着您不必跨请求保留它,因为所有内容都将一次返回。大多数浏览器都支持数据 uri,包括 ie8+。

您可以像这样格式化数据,例如:

from base64 import b64encode

encoded = b64encode(img_data)
mime = "image/jpeg"
uri = "data:%s;base64,%s" % (mime, encoded)

并直接在模板中使用:
<img src="{{ uri }}">

关于python - 渲染图像而不保存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24219446/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com