feat(timer): 训练完成分享海报(canvas+小程序码),解决截图被截断

根因:onShareAppMessage 未返回 imageUrl,微信默认截页面顶部,
完成弹窗垂直居中导致分享卡片只截到上半部分。

实现:
- 隐藏 canvas 2d 绘制 5:4(500x400)成绩海报,含绿色星星图标、状态文案、
  大数字时长、连续打卡、底部引导与右下角小程序码
- _saveAndShowCompletion 弹窗数据就绪后预生成,onShareAppMessage 直接复用
- onTrainAgain 清空 _shareImageUrl 防旧图复用
- 新增 static/share-qr.jpg(用户提供的小程序码)
This commit is contained in:
2026-08-14 09:13:03 +08:00
parent 845a1bfd8d
commit 8ca709b86b
5 changed files with 227 additions and 1 deletions
+11
View File
@@ -638,3 +638,14 @@
color: #FFFFFF;
box-shadow: 0 6rpx 16rpx rgba(var(--primary-rgb), 0.3);
}
/* ---- hidden canvas for share poster (drawn on completion, consumed by onShareAppMessage) ---- */
.share-poster-canvas {
position: fixed;
left: -9999px;
top: -9999px;
width: 500px;
height: 400px;
pointer-events: none;
opacity: 0;
}