From 5356c1ecf44b52b44a3f1cc0b8458fb8d93bd851 Mon Sep 17 00:00:00 2001 From: w Date: Thu, 17 Jul 2025 00:02:23 -0300 Subject: [PATCH] Enhance card drawing functionality to crop and center uploaded art as background --- web/static/v1_legendary.png | Bin 0 -> 58981 bytes web/templates/card_creator.html | 31 +++++++++++++++++++++++++++---- 2 files changed, 27 insertions(+), 4 deletions(-) create mode 100644 web/static/v1_legendary.png diff --git a/web/static/v1_legendary.png b/web/static/v1_legendary.png new file mode 100644 index 0000000000000000000000000000000000000000..2dc719f13aef75cab61ff2684f32114dc0684db7 GIT binary patch literal 58981 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 b.toString(16).padStart(2, '0')).join(''); // Return first 12 characters - return hex.slice(0, 12); + return hex; } @@ -123,11 +123,34 @@ frameSelect.addEventListener("change", updateFrame); function drawCard() { ctx.clearRect(0, 0, canvas.width, canvas.height); - - // Draw uploaded art as background if present + // Draw uploaded art as cropped and centered background if present if (uploadedImage) { - ctx.drawImage(uploadedImage, 0, 0, canvas.width, canvas.height); + const targetWidth = 599; + const targetHeight = 745; + const x = (canvas.width - targetWidth) / 2; + const y = ((canvas.height - targetHeight) / 2)-78; + + // Calculate cropping for source image to fit aspect ratio + const srcAspect = uploadedImage.width / uploadedImage.height; + const targetAspect = targetWidth / targetHeight; + let srcX = 0, srcY = 0, srcW = uploadedImage.width, srcH = uploadedImage.height; + + if (srcAspect > targetAspect) { + // Source is wider: crop sides + srcW = uploadedImage.height * targetAspect; + srcX = (uploadedImage.width - srcW) / 2; + } else { + // Source is taller: crop top/bottom + srcH = uploadedImage.width / targetAspect; + srcY = (uploadedImage.height - srcH) / 2; + } + + ctx.drawImage( + uploadedImage, + srcX, srcY, srcW, srcH, // source crop + x, y, targetWidth, targetHeight // destination on canvas + ); } ctx.drawImage(frameImage, 0, 0, canvas.width, canvas.height);