cheesy/moku/images.py

26 lines
714 B
Python
Raw Permalink Normal View History

2024-03-25 14:11:21 +00:00
from io import BytesIO
from django.core.files import File
from PIL import Image, ImageOps
2024-03-25 14:11:21 +00:00
def _convert_image_to_webp(image_file):
"""Private helper function for image conversion."""
2024-03-25 14:11:21 +00:00
image = Image.open(image_file)
ImageOps.exif_transpose(image, in_place=True)
2024-03-25 14:11:21 +00:00
image.convert("RGB")
image.thumbnail((486, 486))
thumb_io = BytesIO()
image.save(thumb_io, "WEBP")
return File(thumb_io, name=image_file.name)
def process_avatar_image(image_file):
"""Image conversion function for user avatars."""
2024-03-25 14:11:21 +00:00
return _convert_image_to_webp(image_file)
def process_post_image(image_file):
"""Image conversion function for post images."""
2024-03-25 14:11:21 +00:00
return _convert_image_to_webp(image_file)