Spaces:
Sleeping
Sleeping
File size: 594 Bytes
498ffec |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
import base64
import io
from PIL import Image
def image_to_base64_url(image: str | Image.Image):
if isinstance(image, str):
with open(image, "rb") as f:
image = f.read()
elif isinstance(image, Image.Image):
if image.mode in ("RGBA", "LA"):
image = image.convert("RGB")
with io.BytesIO() as buffer:
image.save(buffer, format="PNG")
image = buffer.getvalue()
else:
raise ValueError(f"Invalid image type: {type(image)}")
return "data:image/png;base64," + base64.b64encode(image).decode("utf-8") |