这是我第一篇简书文章,作为一名前端,而且现在电商比较流行的情况下 很多电商公众号商城都用到了生成海报图片长按保存到相册然后可以转发给好友或者分享到朋友圈  在Web前端中,生成图片非Canvas莫属 而html2canvas.js就是一款非常优秀的插件

就比如我们想实现下面的这样的一个效果 它现在是一张图片  用户长按就会弹出系统的保存到手机的弹窗

1.首先我们要布局

上面就是整个html代码了  css代码就省略了

这一段代码呢  就是当canvas执行完成之后html代码将会隐藏  在原来位置会将图片展示上去 然后用户可以长按保存  我们用到了v-show

2 使用canvas生成图片

首先我们肯定要npm 下载和导入

下面一段是html2canvas执行的函数了

在执行时我们要确保页面都加载完毕  所以我们最好是在页面里面的图片加载完毕之后去执行这个函数

也就是在这种图片load完成时去执行  为了防止页面出现空白,同时我们加上了loading图 为了给用户更好的体验  很多人会遇到跨域的情况  这是我们可以加入一些配置  例如useCORS:true; allowTanit:true;表示我们允许跨域  下面是官网提供的一些配置信息

官网链接: [link](官网链接).

## 3.过程中可能会遇到的问题

1.图片不显示这个可能的原因就是上面说的图片跨域了,设置下面两个为true就好了

2 清晰度问题 当你觉得生成的图片不清晰时  我们可以配置他的scale属性来调节它的清晰度

3.我也是最近才遇到这个问题就是代码没变  突然就是ios14不能使用了  没反应 最后在我各方打听下原来也不是哦我们的问题 我们只需要讲html2canvas的版本降级就好了  下面是版本信息

由于是第一次在简书上写文章  有需要改进的地方请指出  我会改进的

用vue PHP实现海报设计功能,有关vue html2canvas生成海报功能的实现相关推荐

  1. h5 uniapp html2canvas生成海报,保存到本地功能实现;

    html2canvas生成海报,保存到本地功能实现 1. 在开发过程中我们将HTML2canvas封装成一个组件,通过prop传递ID参数 2. 组件的使用,伪代码不要直接复制uniapp语法 3. ...

  2. 前端生成海报图:html2canvas 生成海报图/网页html转图片

    html2canvas 生成海报图 <html><head> <title>生成海报图Demo</title> </head><bod ...

  3. Vue + html2canvas 生成海报

    Html: <div class="record"><!-- 如果没有生成过海报,则先拼接成海报样式展示 --> <div v-show=" ...

  4. html2canvas手机黑屏,html2canvas 生成海报图 开发中遇到的问题

    ios里,生成的图片不显示 canvas.toDataURL('image/jpeg', 1.0) 使用image/jpeg格式,在指定图片格式为 image/jpeg 或 image/webp的情况 ...

  5. html2canvas生成海报的各种问题

    html2canvas (一)官网下载安装 (二)基础用法 (三)生成海报问题 canvas高分屏下的模糊问题 html2canvas图片模糊问题 canvas图片getImageData,toDat ...

  6. php html生成海报jpg,html2canvas 生成海报

    应用场景 移动端H5 分享海报 安装html2canvas 插件 npm install --save html2canvas Vue中使用 // 在Vue页面中引入 import html2canv ...

  7. uniapp中,H5端使用html2canvas生成海报

    项目中H5需要实现canvas生成海报,于是用了html2canvas,中间各种BUG,其中跨域问题一直没有处理好,后台服务器设置了支持跨域也不可以.最后解决方案是,把网络图片全部转成base64展示 ...

  8. js常用插件(三)之html2canvas生成海报

    js常用插件之html2canvas截图生成海报 欢迎点击: 个人官网博客 先引用cdn或自己下载下来 <script src="https://cdn.bootcdn.net/aja ...

  9. 微信小程序合成海报_微信小程序 canvas生成海报图片模糊问题

    一.制作正常显示海报,生成二倍海报隐藏 代码如下 {{sendName}} 保存图片 /*css*/ .btn { width: 300rpx; height: 90rpx; line-height: ...

最新文章

  1. MySQLFabric概述
  2. 【陷阱】交换排序中交换动作的陷阱
  3. c语言long long类型赋值
  4. 编写Ogre插件的一般方法
  5. RHEL4- SAMBA服务(四)在x-window下图形界面简单搭建samba服务器
  6. 动态添加input_前端提效必备:动态模版生成
  7. java equ,Java equals方法详解
  8. Python之Mac上搭建集成开发环境
  9. B6-简析响应者链条
  10. 【渝粤题库】陕西师范大学209015公共经济学作业(高起本、专升本)
  11. CuteFTP试用期后继续免费使用
  12. 虚拟机里CDlinux 里的水滴 minidwep-gtk
  13. 1. 查询表customer——查询姓名和联系人相同的顾客信息
  14. 鸿蒙界境界划分,修为境界划分
  15. DAY9:尚学堂高琪JAVA(98)
  16. echarts百分比柱形图
  17. 解决“ 故障模块名称: clr.dll ”
  18. IDEA报错: Port already in use: 1099
  19. for.in for..of..
  20. [洛谷]P1234 小A的口头禅 (#模拟)

热门文章

  1. Webpack前端打包工具
  2. OCR综述—持续更新
  3. zoom:1的原理及用法
  4. Nginx介绍及基本使用
  5. 物理学专业英语(写作整理)01
  6. 第一章 全局在胸——用工具对SQL整体优化
  7. python,WordCloud库绘制圆形词云图
  8. 转帖:不错的采用神经网络EA(自动交易系统)
  9. Minio(储桶bucket)上传和下载文件【Java】(图片转流、base64)
  10. 无线蓝牙耳机买哪个牌子好?2022年音质最好的蓝牙耳机