Merge pull request #154 from aria1th/fix-pnginfo-compat

fix PNGInfo Related usage (fix NoneType does not have encode method)
pull/127/head
ArtVenture 2023-10-20 20:52:13 +07:00 committed by GitHub
commit 2c6d29853e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 6 additions and 2 deletions

View File

@ -65,10 +65,14 @@ def encode_image_to_base64(image):
geninfo, _ = images.read_info_from_image(image)
pnginfo = PngImagePlugin.PngInfo()
pnginfo.add_text("parameters", geninfo)
if geninfo:
pnginfo.add_text("parameters", geninfo)
with io.BytesIO() as output_bytes:
image.save(output_bytes, format="PNG", pnginfo=pnginfo)
if geninfo:
image.save(output_bytes, format="PNG", pnginfo=pnginfo)
else:
image.save(output_bytes, format="PNG") # remove pnginfo to save space
bytes_data = output_bytes.getvalue()
return "data:image/png;base64," + base64.b64encode(bytes_data).decode("utf-8")