15 lines
389 B
Python
15 lines
389 B
Python
import base64
|
|
import io
|
|
|
|
from PIL import Image
|
|
|
|
Image.MAX_IMAGE_PIXELS = None
|
|
|
|
|
|
def to_data_uri(image: Image.Image, max_size: tuple[int, int] = (1100, 1600)) -> str:
|
|
image = image.copy()
|
|
image.thumbnail(max_size, Image.LANCZOS)
|
|
buffer = io.BytesIO()
|
|
image.save(buffer, "JPEG", quality=92)
|
|
return "data:image/jpeg;base64," + base64.b64encode(buffer.getvalue()).decode()
|