最近在项目中遇到一个需求,需要提供网页截图的功能。百度下发现html2canvas很好用。那就试试吧。

资源下载地址

使用方式

项目使用的react组件开发方式。参照官方的说明文档getting-started.md,按照以下步骤进行:

1、使用以下命令安装

npm install html2canvas --save

2、在文件中引入html2canvas

import html2canvas from 'html2canvas';

3、文件中的使用

html2canvas(document.body).then(function(canvas) {

document.body.appendChild(canvas);

});

遇到的问题

按照这个方式使用,页面没有滚动条还行,有滚动条时出现大片空白。

错误截图如下:

解决方案

仔细看了一下configuration.md和网友的分析,最终解决。代码片段如下

上一张正确的截图如下:

代码中的配置项说明

1、截图产生空白是因为容器高度设置的问题,设置windowHeight的高度等于页面包含滚动条的高度即可获取滚动条中的内容。这一条就可以解决空白的问题。

2、设置width、height属性的原因是,我们在页面中截图显示的区域宽度和高度是固定的,就是当前屏幕的可见区域。

3、设置x、y坐标的原因是由于页面在有滚动条的时候,需要指定截图的起始位置。本项目中x轴方向不存在滚动条,所以设置为零;y方向有滚动条,所以需要获取一下当前方向的滚动坐标。

4、一般网页中会有图片,图片中有链接地址时,设置useCORS属性可保证图片的加载。

到此这篇关于html2canvas截图空白问题的解决的文章就介绍到这了,更多相关html2canvas截图空白内容请搜索脚本之家以前的文章或继续浏览下面的相关文章,希望大家以后多多支持脚本之家!

android截图canvas为空,html2canvas截图空白问题的解决相关推荐

  1. html2canvas截图丢失部分元素

    html2canvas截图丢失部分元素 html2canvas截图丢失所选区域的部分元素 //这是我需要截取的元素 //截取之后,图中会丢失一些模块 请问有哪位道友遇到过类似的问题??? 相关代码 l ...

  2. html转换成canvas一片空白,html2canvas截图空白问题怎么解决 html2canvas截图空白问题解决方法...

    本篇文章小编给大家分享一下html2canvas截图空白问题解决方法,通过代码图文详细分析了问题及解决方法,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 项目使用的reac ...

  3. 前端 - html2canvas 截图显示空白

    一.工作原理 html2canvas库的工作原理并不是真正的"截图",而是读取网页上的目标DOM节点的信息来绘制canvas,所以它并不支持所有的css属性. 二.在 img标签中 ...

  4. html2canvas 截图 图片为空白 无法截图

    html2canvas 截图 图片类型为空白 解决办法 图片地址不是本地图片是网络图会出现 截取后为空白的情况 1.此时可以让后台返给你base64的图片地址就可以截取了 2.做个静态转化 先存在本地 ...

  5. vue页面截图用html2canvas截图不完整有滚动条+有echarts图表时完整截图——截图保存为图片或pdf

    问题 最开始需要做一个网页的截图,结果发现有滚动条怎么都截取不成功,然后各种百度到了一个办法,就是复制那个节点到body,然后在截取那个复制的节点,小页面实验了一下,成功了好开心,代码是这样的.但是, ...

  6. 在vue项目中使用html2canvas截图(固定区域截图)

    1.项目目录下,打开dos窗口使用cnpm安装html2canvas插件. cnpm isntall html2canvas 2.在使用html2canvas的页面中,引入插件. import htm ...

  7. 关于html2canvas截图模糊的CDN版本差异的一个坑

    问题 项目使用html2canvas截图,存在截图模糊.左边是原html,右边是html2canvas生成的截图,明显发现html2canvas生成的模糊一大截 查了解决办法,解决html2canva ...

  8. html2canvas截图 图片另存并解决图片模糊问题

    最近由于公司业务要求,需要完成一个HTML页面效果渲染后生成照片的功能,功能的核心是把HTML代码展现的内容转化为png或者jpg图片.接到这个任务的时候,我心里是一脸懵逼的,于是就上谷歌搜索插件,还 ...

  9. html2canvas截图的使用

    html2canvas截图的使用 前几天一个月薪35k的兄弟,给我推了一个人工智能学习网站,看了一段时间挺有意思的.包括语音识别.机器翻译等从基础到实战都有,很详细,分享给大家.大家及时保存,说不定啥 ...

最新文章

  1. [MySQL FAQ]系列 -- mysql是否支持跨库事务
  2. http反向代理调度算法追朔
  3. LVS(9)——为NAT单独增加路由器
  4. java可视化界面视频_java中的可视化界面
  5. webpack常用知识点
  6. 精品软件 推荐 卡巴斯基安全软件 本人使用过的效果最好的杀毒软件之一哟...
  7. 指数分布族(The Exponential Family)与广义线性回归(Generalized Linear Model GLM)
  8. 微软高性能缓存AppFabric(二)使用
  9. 1stopt拟合步骤_1stopt三维曲线拟合
  10. 河南的抗疫英雄,给出一系列抗疫英雄的姓名和来自的省份,现在请你帮忙统计来自河南的抗疫英雄有多
  11. 首批!工信部下达2021年国家工业专项节能监察任务,涉及270 个数据中心(附名单)...
  12. excel怎么设置自动计算_excel表格设置自动计算的方法步骤(2)
  13. 2021年Vector中国用户大会讲了啥
  14. python替换列表中元素_python中关于元素替换的一些总结
  15. Android手动控制软键盘的开启和关闭,判断软键盘是否显示;
  16. 某线下水果店销售数据分析
  17. 国产浏览器的创新之路,拼的就是用户体验
  18. python2和python3实现在图片上加汉字
  19. You may wish to exclude one of them to ensure predictable runtime behavior
  20. WordPress多语言翻译插件小语种互译

热门文章

  1. 脑部手术成功,只是万里长征走完了第一步
  2. wordpress插件在服务器上的存储位置
  3. SAP CRM和Hybris里的Product Variant
  4. 阮一峰react demo代码研究的学习笔记 - Chrome extension - react tool
  5. where is Angular parts filled
  6. 动态修改dom node的两种方法性能比较
  7. How is Organization Unit currency attribute merged into pricing document
  8. 利用Chrome开发者工具分析C4C Opportunity搜索的前端性能
  9. Step by step to create time dependent view
  10. Attachment multiple read API - performance with regular expression