Refactored code to be more maintainable

This commit is contained in:
2024-07-13 17:58:27 +02:00
parent 1183327e7e
commit 901daf6c06
12 changed files with 355 additions and 437 deletions

View File

@@ -1,10 +1,6 @@
import os
from wand.image import Image
from wand.color import Color
import os
canvas_width = 900
canvas_height = 900
def set_canvas_size(width, height):
global canvas_width, canvas_height
@@ -12,6 +8,11 @@ def set_canvas_size(width, height):
canvas_height = int(height)
def resize_image(image_path, output_path, additional_name):
# Normalize the paths to ensure consistency
image_path = os.path.normpath(image_path)
output_path = os.path.normpath(output_path)
with Image(filename=image_path) as img:
img.transform(resize=f'{canvas_width}x{canvas_height}>')
@@ -20,9 +21,14 @@ def resize_image(image_path, output_path, additional_name):
with Image(width=canvas_width, height=canvas_height, background=Color('transparent')) as canvas:
canvas.composite(img, left=x_offset, top=y_offset)
# Create a new filename
new_filename = os.path.splitext(os.path.basename(output_path))[0]
if additional_name:
new_filename += " - " + additional_name.strip()
new_filename += os.path.splitext(output_path)[1]
output_path = os.path.join(os.path.dirname(output_path), new_filename)
canvas.save(filename=output_path)
# Construct the final output path
final_output_path = os.path.join(os.path.dirname(output_path), new_filename)
# Save the image to the final output path
canvas.save(filename=final_output_path)
print(f"Saved to: {final_output_path}")
set_canvas_size(900, 900)