fix:优化导出图片清晰度
This commit is contained in:
19
js/script.js
19
js/script.js
@@ -1781,7 +1781,12 @@
|
||||
// 显示预览
|
||||
async function showPreview() {
|
||||
const canvas = await generateCanvas();
|
||||
const dataUrl = canvas.toDataURL('image/png');
|
||||
console.log('预览画布尺寸:', canvas.width, 'x', canvas.height);
|
||||
|
||||
// 使用 toBlob 获取更高质量的图片
|
||||
const blob = await new Promise(resolve => canvas.toBlob(resolve, 'image/png', 1.0));
|
||||
console.log('预览图片大小:', (blob.size / 1024).toFixed(2), 'KB');
|
||||
const dataUrl = URL.createObjectURL(blob);
|
||||
|
||||
const tipOverlay = document.createElement('div');
|
||||
tipOverlay.id = 'previewTip';
|
||||
@@ -1969,6 +1974,7 @@
|
||||
// 设置画布为固定高清分辨率
|
||||
canvas.width = TARGET_WIDTH;
|
||||
canvas.height = TARGET_HEIGHT;
|
||||
console.log('设置画布尺寸:', canvas.width, 'x', canvas.height);
|
||||
|
||||
// 启用最高质量渲染
|
||||
ctx.imageSmoothingEnabled = true;
|
||||
@@ -2224,7 +2230,7 @@
|
||||
|
||||
try {
|
||||
const canvas = await generateCanvas();
|
||||
showMobileSaveTip();
|
||||
await showMobileSaveTip();
|
||||
} catch (err) {
|
||||
console.error('保存失败:', err);
|
||||
alert('保存失败,请重试');
|
||||
@@ -2232,9 +2238,14 @@
|
||||
}
|
||||
|
||||
// 显示移动端保存选项
|
||||
function showMobileSaveTip() {
|
||||
async function showMobileSaveTip() {
|
||||
const canvas = exportCanvas;
|
||||
const dataUrl = canvas.toDataURL('image/png');
|
||||
console.log('导出画布尺寸:', canvas.width, 'x', canvas.height);
|
||||
|
||||
// 使用 toBlob 获取更高质量的图片
|
||||
const blob = await new Promise(resolve => canvas.toBlob(resolve, 'image/png', 1.0));
|
||||
console.log('导出图片大小:', (blob.size / 1024).toFixed(2), 'KB');
|
||||
const dataUrl = URL.createObjectURL(blob);
|
||||
const filename = '邀请函_' + Date.now() + '.png';
|
||||
|
||||
const tipOverlay = document.createElement('div');
|
||||
|
||||
Reference in New Issue
Block a user