2 回答
TA贡献1797条经验 获得超4个赞
我找到了一种方法来生成图像,而无需将其保存在文件夹中。您基本上将图像保存为字节并转换为base64。
views.py
import io
import base64
from PIL import Image
from django.shortcuts import render
from django.utils.safestring import mark_safe
def home(request):
im_io = io.BytesIO()
im = Image.new('RGBA', (300,300), (255, 214, 107))
im_bg.text((10,0), test, fill='black')
im.save(im_io, 'png', quality=70)
im_io.seek(0)
im_io_png = base64.b64encode(im_io.getvalue())
context = im_io_png.decode('UTF-8')
img_tag = mark_safe(f"<img src='data:image/png;base64, {context}'/>")
return render(request, 'home.html', {'img_tag': img_tag })
家.html
<body>
<h1>The Poster Generator </h1>
<div>{{img_tag}}</div> <!-- Image will display here -->
</body>
添加回答
举报