From d297fa9f55d1b70594022d54d6ad2ccb02af46bb Mon Sep 17 00:00:00 2001 From: Abner <22141172+Silentely@users.noreply.github.com> Date: Thu, 25 Jun 2026 22:25:41 +0800 Subject: [PATCH] =?UTF-8?q?=E2=9A=A1=20perf:=20=E6=8F=90=E9=AB=98=E4=BA=8C?= =?UTF-8?q?=E7=BB=B4=E7=A0=81=E7=94=9F=E6=88=90=E5=9B=BE=E5=83=8F=E6=B8=85?= =?UTF-8?q?=E6=99=B0=E5=BA=A6=E7=9A=84=E6=94=BE=E5=A4=A7=E5=80=8D=E7=8E=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 本地生成二维码时将 `createDataURL` 的第二个参数从 `cellSize * 2` 调整为 `cellSize * 4`,提升生成图片清晰度 - 边缘函数生成二维码时同步将 `createDataURL` 的第二个参数从 `cellSize * 2` 调整为 `cellSize * 4`,保证本地与线上效果一致 - 维持原有 `cellSize` 计算逻辑不变,确保二维码模块数与边距的适配策略一致 --- netlify/edge-functions/bff-proxy.js | 2 +- src/js/modules/qrcode-generator.js | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/netlify/edge-functions/bff-proxy.js b/netlify/edge-functions/bff-proxy.js index e0f2acb..79629eb 100644 --- a/netlify/edge-functions/bff-proxy.js +++ b/netlify/edge-functions/bff-proxy.js @@ -154,7 +154,7 @@ export default async (request, context) => { qr.make(); const moduleCount = qr.getModuleCount(); const cellSize = Math.max(1, Math.floor(numSize / (moduleCount + QR_MARGIN_MODULES))); - const qrcode = qr.createDataURL(cellSize, cellSize * 2); + const qrcode = qr.createDataURL(cellSize, cellSize * 4); const duration = Date.now() - qrStartTime; console.log(`[edge:qrcode-generate] Success: size=${numSize}, modules=${moduleCount}, cellSize=${cellSize}, duration=${duration}ms, qrcodeLength=${qrcode.length}`); diff --git a/src/js/modules/qrcode-generator.js b/src/js/modules/qrcode-generator.js index 618d143..2ef6b72 100644 --- a/src/js/modules/qrcode-generator.js +++ b/src/js/modules/qrcode-generator.js @@ -213,8 +213,8 @@ export async function generateQRCodeLocal(data, size = DEFAULT_QR_SIZE, labels = const cellSize = Math.max(1, Math.floor(safeSize / (moduleCount + QR_MARGIN_MODULES))); const largeCellSize = Math.max(1, Math.floor(LARGE_PREVIEW_SIZE / (moduleCount + QR_MARGIN_MODULES))); - const imageUrl = qr.createDataURL(cellSize, 2); - const largeImageUrl = qr.createDataURL(largeCellSize, 2); + const imageUrl = qr.createDataURL(cellSize, cellSize * 4); + const largeImageUrl = qr.createDataURL(largeCellSize, largeCellSize * 4); console.log(`[QRCode] Local generation success: size=${safeSize}, modules=${moduleCount}, cellSize=${cellSize}`);