html2canvas实现生成图片以及易出错点

简介: html2canvas实现生成图片以及易出错点

html2canvas 将html元素转为图片

html2canvas(element,options).then((canvas) =>{})


基本使用


  • 参数

scale:缩放比例,默认为1

allowTaint:是否允许跨域图像污染画布,默认为false

useCORS:是否尝试使用CORS从服务器加载图像,默认为false

width:canvas画布的宽度,默认为jQuery对象的宽度

height:canvas画布的高度,默认为jQuery对象的高度

backgroundColor:/画布的背景色,默认为透明(#fff),参数可以为#表示的颜色,也可以使用rgba


  • 忽略某元素
    在某元素加上以下属性信息即可
data-html2canvas-ignore="true"
  • 安装
npm install html2canvas
  • 使用
 html2canvas(this.$refs.imageDom, { backgroundColor: null, useCORS: true }).then(canvas => {
     //延迟执行确保万无一失,玄学
    setTimeout(() => {
    //转成图片,生成图片地址
         this.createFile(canvas.toDataURL("image/png"))//可将 canvas 转为 base64 格式
          }, 0)
      }).catch(error => {
    });

易错点


  1. 生成图片区域中的dom元素中有img标签,生成图片后,img图片加载不出来
  • 添加useCORS:true属性;
  • 给要生成canvas的DOM中包含的每一个img标签添加crossorigin="anonymous"属性;
  • 确保你的图片CDN服务器支持CORS访问,也就是会返回Access-Control-Allow-Origin等响应头。
  1. 不支持box-show、box-radius
  2. 生成图片背景色异常,需要在异常的背景色处的dom块元素,设置背景色,一般设置为白色
目录
相关文章
|
4月前
|
移动开发 前端开发 JavaScript
使用html-to-image代替html2canvas,结合jspdf实现下载pdf(下载截图下载前端dom元素)
本文介绍了在前端项目中,当使用`html2canvas`遇到问题时,如何使用`html-to-image`库作为替代方案,结合`jspdf`实现将DOM元素生成为PDF文件并提供下载。文章首先讨论了`html2canvas`可能遇到的问题,并提供了该库的使用示例代码。随后,详细介绍了`html-to-image`库的安装和使用方法,展示了如何将DOM元素转换为Canvas,再利用`jspdf`生成PDF文件。最后,文章通过示例代码说明了整个转换和下载的过程,并展示了效果截图。
207 0
|
4月前
|
前端开发
在 HTML canvas 绘制文本
在 HTML canvas 绘制文本
26 0
|
7月前
|
移动开发 前端开发 JavaScript
将HTML5 Canvas的内容保存为图片
将HTML5 Canvas的内容保存为图片
45 5
|
7月前
|
移动开发 缓存 前端开发
提高HTML5 Canvas性能的技巧
提高HTML5 Canvas性能的技巧
52 5
|
8月前
html中img图片进行等比例缩放的实例代码
HTML中,要修改img元素定义的图片的大小,且是等比例缩放,不改变宽和高的比值,那么可以采用只设置img元素属性中width和height中的任何一个,不要同时设置两个即可实现img图片的等比例缩放效果。下面将通过两个实例来分别实现这两种方法。
180 1
|
8月前
|
JavaScript 测试技术
html2canvas将document DOM节点转换为图片,并下载到本地
html2canvas将document DOM节点转换为图片,并下载到本地
|
前端开发 JavaScript
html2canvas实现页面截图并使用axios上传
html2canvas实现页面截图并使用axios上传
500 0
html2canvas实现页面截图并使用axios上传
|
移动开发 前端开发 API
HTML5标签canvas制作平面图
HTML5标签canvas制作平面图
|
前端开发 JavaScript CDN
将html转化为canvas图片(清晰度高)的方法
将html转化为canvas图片(清晰度高)的方法
1528 0

热门文章

最新文章