h5实现内嵌微信小程序&支付宝 --截图保存海报分享功能

1.首先需要正常写你需要展示的页面

2.下载html2canvas

复制代码
import html2canvas from 'html2canvas';

3.封装一个公共的方法

复制代码
export const screenshot = async () => {
  const target = document.querySelector('#capture-target');
  const canvas = await html2canvas(target, {
    useCORS: true, // 允许跨域图片
    allowTaint: true,
    scale: 2, // 照片质量
    allowTaint: false,
  });
  const imgUrl = canvas.toDataURL('image/png');
  return imgUrl;
};

4.拿到图片的imgUrl 再用一个弹框打开 提醒用户长按保存

使用h5会经常遇到跨域的问题,因为我们展示img天生具有跨域的属性,但是一旦使用html2canvas 跨域会经常见到,所以一定要后端支持,如果图片保存在云盘 可以设置

允许跨域

5.保存还有一个问题 就是图片模糊可能会不清晰 这时候需要把uni-app中的

<image>换成原生的<img>

不要使用图片背景 直接使用图片

相关推荐
栀秋6666 分钟前
JavaScript 中的 简单数据类型:Symbol——是JavaScript成熟的标志
前端
最爱老虎头8 分钟前
Konvajs实现虚拟表格
javascript
Nayana14 分钟前
前端控制批量请求并发
前端
ssjlincgavw14 分钟前
前端高手进阶:从十万到千万,我的性能优化终极指南(实战篇)
前端
比老马还六15 分钟前
Bipes项目二次开发/设置功能-1(五)
前端·javascript
转转技术团队24 分钟前
VDOM 编年史
前端·设计模式·前端框架
蓝瑟忧伤27 分钟前
前端性能体系的全面升级:现代 Web 如何构建可量化、可治理、可演进的性能架构?
前端·架构
申阳29 分钟前
Day 17:03. 基于 Tauri 2.0 开发后台管理系统-登录页面开发
前端·后端·程序员
二川bro32 分钟前
Python在AI领域应用全景:2025趋势与案例
开发语言·人工智能·python
诸葛亮的芭蕉扇37 分钟前
tree组件点击节点间隙的异常问题分析
前端·javascript·vue.js