From e50532e2de0a85082590903733b813d6e3537370 Mon Sep 17 00:00:00 2001 From: kron Date: Mon, 17 Nov 2025 16:28:57 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=86=E8=8A=82=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/canvas.js | 8 +++++--- src/static/point.png | Bin 0 -> 511 bytes 2 files changed, 5 insertions(+), 3 deletions(-) create mode 100644 src/static/point.png diff --git a/src/canvas.js b/src/canvas.js index 407cd81..52d89f4 100644 --- a/src/canvas.js +++ b/src/canvas.js @@ -263,8 +263,8 @@ export const generateShareImage = async (canvasId, data) => { await drawRoundImage(ctx, avatarImg, 13, 13, 54, 54, 27, "#000", 1); renderText(ctx, data.user.name, 18, "#000", 84, 36); - renderText(ctx, data.recordDate, 9, "#fff", 350, 24, "center", 39); - renderText(ctx, "今日打卡", 13, "#fff", 336, 38, "center", 39); + renderText(ctx, data.recordDate, 9, "#fff", 348, 23, "center", 39); + renderText(ctx, "今日打卡", 14, "#fff", 336, 38, "center", 39); // 文本标签 let cursorX = 84; @@ -437,7 +437,9 @@ export const generateShareImage = async (canvasId, data) => { 120, hasPoint ? 756 : 402 ); - renderText(ctx, "扫码打卡", 13, "#FFA118", 120, hasPoint ? 777 : 422); + renderText(ctx, "扫码打卡", 13, "#FFA118", 142, hasPoint ? 777 : 422); + const pointImg = await loadCanvasImage(canvas, "../static/point.png"); + ctx.drawImage(pointImg, 120, hasPoint ? 765 : 410, 18, 14); // 2D 即时绘制,无需 ctx.draw() } catch (e) { console.error("generateShareImage 绘制失败:", e); diff --git a/src/static/point.png b/src/static/point.png new file mode 100644 index 0000000000000000000000000000000000000000..a3c882538217369634f71d5a5b0aea67687f1e8f GIT binary patch literal 511 zcmeAS@N?(olHy`uVBq!ia0vp^3P3Ey!3-oHx~}5|QWFAvLR^9L|3%{emr4JhBk_L` z5J~=DDDi)x`2WQsUxo{4FOst4z&&_0#vX7q*7gUQ!da=`Xxbr!3^&OxE5yYZ zKi*zCbEG=X(@slP`2WBB?8QR@(R-zJznE|*I;u>(?zo=Y!-{i@%I7COV$o}aOIRN4F3F47 z`q)u6Jcv(u*$fNATMv%fU-%h#y}u`a({ibu6VjzuoLv0zSnid}ryg7vvs}w-l5;Zu z&Ccd&XKfGFizQ6@aB{C<#&pI%4U3-}RS0g&y>7Fm_I|Q%fE1fF!>GtT-A6T+ yy{_fUD|DL|<