artemis/titles/idac/data/create_delivery_images.py

39 lines
1.4 KiB
Python

import os
import hashlib
def prepare_images(image_folder="titles/idac/data/images"):
print(f"Preparing image delivery files in {image_folder}...")
for file in os.listdir(image_folder):
if file.endswith(".png") or file.endswith(".jpg"):
# dpg_name = "adv-" + file[:-4].upper()
dpg_name = file[:-4]
if file.endswith(".png"):
dpg_name += ".dpg"
else:
dpg_name += ".djg"
if os.path.exists(os.path.join(image_folder, dpg_name)):
continue
else:
with open(
os.path.join(image_folder, file), "rb"
) as original_image_file:
original_image = original_image_file.read()
image_hash = hashlib.md5(original_image).hexdigest()
print(
f"DPG for {file} not found, creating with hash {image_hash.upper()} ..."
)
md5_buf = bytes.fromhex(image_hash)
dpg_buf = md5_buf + original_image
dpg_name = "adv-" + image_hash.upper() + dpg_name[:-4]
with open(os.path.join(image_folder, dpg_name), "wb") as dpg_file:
dpg_file.write(dpg_buf)
print(f"Created {dpg_name}.")
# Call the function to execute it
prepare_images()