mirror of
https://github.com/kittywitch/konawall-py.git
synced 2026-02-09 20:39:18 -08:00
17 lines
847 B
Python
17 lines
847 B
Python
import tempfile
|
|
import logging
|
|
from PIL import Image
|
|
|
|
def combine_to_viewport(displays: list, files: list):
|
|
# Create an image that is the size of the combined viewport, with offsets for each display
|
|
max_width = max([display.x + display.width for display in displays])
|
|
max_height = max([display.y + display.height for display in displays])
|
|
combined = Image.new("RGB", (max_width, max_height))
|
|
for i, file in enumerate(files):
|
|
open_image = Image.open(file, "r")
|
|
resized_image = open_image.resize((displays[i].width, displays[i].height))
|
|
combined.paste(resized_image, (displays[i].x, displays[i].y))
|
|
file = tempfile.NamedTemporaryFile(delete=False)
|
|
logging.debug(f"Created temporary file {file.name} to save combined viewport image into")
|
|
combined.save(file.name, format="PNG")
|
|
return file
|