您现在的位置是:网站首页> 编程资料编程资料
html2canvas截图空白问题的解决html2canvas生成的图片偏移不完整的解决方法使用html2canvas实现将html内容写入到canvas中生成图片html2 canvas生成清晰的图片实现打印功能html2canvas.js 实现页面截图html2 canvas svg不能识别的解决方案
2023-10-11
325人已围观
简介 这篇文章主要介绍了html2canvas截图空白问题的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
最近在项目中遇到一个需求,需要提供网页截图的功能。百度下发现html2canvas很好用。那就试试吧。
资源下载地址
插件下载地址: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截图空白内容请搜索以前的文章或继续浏览下面的相关文章,希望大家以后多多支持!
相关内容
- html5视频常用API接口的实战示例HTML5拖拽API经典实例详解HTML5页面直接调用百度地图API获取当前位置直接导航目的地的实现代码你不知道的5个HTML5新功能HTML5拖放API实现自动生成相框功能
- Html5页面上如何禁止手机虚拟键盘弹出html5手机键盘弹出收起的处理
- HTML5 body设置自适应全屏HTML页面自适应宽度的table(表格)html5移动端自适应布局的实现HTML5 textarea高度自适应的两种方案关于html选择框创建占位符的问题
- iframe与window.onload如何使用详解遮罩层 + Iframe实现界面自动显示的示例代码通过iframe监听一个DOM元素大小变化关于解决iframe标签嵌套问题的解决方法iframe跨域的几种常用方法跨域修改iframe页面内容详解iframe在移动端的缩放的示例代码web响应式布局中iframe自适应的方法div被iframe遮住的几种情况及解决方法浅谈Iframe网页内部的导航窗口举例讲解HTML中iframe和frame的区别
- HTML5录音实践总结(Preact)HTML5网页录音和上传到服务器支持PC、Android,支持IOS微信功能html5录音功能实战示例详解HTML5 录音的踩坑之旅
- 详解HTML5.2版本带来的修改html5.2 dialog简介详解
- 100floors电梯 第45层 图文攻略_手机游戏_游戏攻略_
- 百万亚瑟王国服妖精战刷够等级送华恋闪卡活动开启_手机游戏_游戏攻略_
- 大师微博自曝 我叫MT3.2新版本或将下周开启_手机游戏_游戏攻略_
- 我叫MT 魔能的狂欢 无大大姐也能混强敌_手机游戏_游戏攻略_
