html2canvas页面截图图片不显示

前两天在一个群里,有人问使用html2canvas屏幕截图的时候为什么页面的图片不显示只显示了文字,我没有做过屏幕截图的需求,所以不是很清楚,今天稍稍测试了一下。

在github上将html2canvas源码下载到本地,examples文件夹里有三个示例demo,这三个demo都是纯文字不包含图片的,前两个demo是打开之后直接就生成图片展示出来了,第三个是一个按钮触发生成,这里使用第三个demo来修改进行测试。

一、这是初始页面,上面带有背景颜色的是要截取的部分(id名为‘content’),下方带有笑脸的是canvas标签。点击run按钮,成功截取显示在canvas中,没有任何问题。

二、将截取部分的背景属性替换成网络上的一张图片

#content {                                  background:url(‘http://www.cnblogs.com/skins/nature/images/top.gif‘);
    padding: 50px 10px;
}

背景可以正常显示,但是点击run按钮之后,canvas中只显示出了文字,并没有显示出背景图片,并且浏览器也无报错。

三、将截取部分的背景属性替换成本地的一张图片

#content {
            padding: 50px 10px;
            background: url(‘../../AI/xt.jpg‘);
            background: url(‘xt.jpg‘);
            background: url(‘file:///D:/wamp/www/测试文件夹/AI/xt.jpg‘);
        }

以上css写了三种情况:1.相对路径,在不同目录下;2.相对路径,在同一级目录下;3.绝对路径。

背景图片可以正常显示,点击ruan按钮之后,背景图片均可以显示在canvas中。

四、将截取部分背景图片的路径通过本机IP来访问

#content {
            padding: 50px 10px;
            background: url(‘http://10.0.1.6/测试文件夹/AI/xt.jpg‘);
        }

背景图片可以正常显示出来,点击run之后canvas中只显示了文字,背景图片消失。

图片不能在canvas中显示出来的原因是因为html2canvas不支持跨域的图片资源,所以canvas中不会显示图片。

时间: 2024-08-04 14:30:09

html2canvas页面截图图片不显示的相关文章

精确比较页面截图图片

环境: 打开CMD窗口,输入pip install pillow安装Python图像处理库,安装结束后在CMD下进入Python交互模式,执行from PIL import Image,没有报错则安装成功. #!usr/bin/env python #-*- coding:utf-8 -*- """ @author: sleeping_cat @Contact : [email protected] """ #精确比较页面截图图片 from se

EasyUI+SpringMVC+Mybaits 页面图片弹窗显示

项目中需要完成一个点击超链接弹出窗口,窗口中用于展示存放于数据库中的图片这样的功能: # 准备工具: 环境: Eclipse 4.3 jdk1.7.0_72 apache-maven-3.0.4 apache-tomcat-7.0.53 spring-mvc-4.0 spring-beans-4.0 mybatis-3.2.8 oracle 11.2.0.3.0 # 基本思路(按照数据流向分析): ------------------------ 后台: >>> 首先从数据库中获取一个带

采集百度搜寻结果,图片不显示的解决方法

1.根据关键字采集百度搜寻结果 根据关键字采集百度搜寻结果,可以使用curl实现,代码如下: <?php function doCurl($url, $data=array(), $header=array(), $timeout=30){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_R

DD_belatedPNG插件图片不显示bug

一直很少做PC页面,兼容问题更是接触的少之又少,今天做了一个小导航,发现IE6下只有第一个显示 这里是正常的效果 IE6下,背景都消失不见了. 解决办法,去掉元素设置背景时的CSS里的no-repeat就解决了,具体原因,有时间了细细研究下 DD_belatedPNG插件图片不显示bug,布布扣,bubuko.com

js实现图片预显示

html页面代码 <div id="localImag" style="display:none"><img  id="preview" width="150" height="150"  /></div> <input type='file' name='file' id='doc' onclick='javascript:setImagePreview()'&g

移动设备的HTML页面中图片实现滚动加载

如今移动互联网风靡全球,移动页面的元素也是丰富多彩,一个移动页面的图片超过10张已经是再正常不过的事情了.但是相对,很多移动用户还停留在2G,3G这样的网络中.那么这样带宽的用户,在浏览这样的页面时,要把页面加载完毕,可能就需要10s,20s甚至更多,严重影响用户的体验.针对这样的问题,让页面中的图片滚动加载(图片出现在显示器屏幕上时再加载图片)显得非常重要!这样也可以有效地节省我们服务器的带宽和解决请求大并发的问题. 1.效果图.     这是加载过程中的图片菊花显示            

Python+selenium之截图图片并保存截取的图片

本文转载:http://blog.csdn.net/u011541946/article/details/70141488 http://www.cnblogs.com/timsheng/archive/2012/09/05/2672651.html 介绍如何利用Selenium的方法进行截图,在测试过程中,是有必要截图,特别是遇到错误的时候进行截图.在selenium for Python中主要有三个截图方法,我们挑选其中最常用的一种. 截图技能对于测试人员来说应该是较为重要的一个技能. 在自

background-size引发的背景图片不显示的问题

background-size   这个背景属性在移动开发大家应该都有使用,而且会有一种用得很爽的感觉.今天后台哥突然找我说页面中所有的背景图片显示不了.赶紧拿起手机,开启原生的浏览器打开一看,果然...所有背景图片均显示不了(ps:为什么之前没有发现..因为切页面时是用chorme插件看效果得).有问题那就要马上验证解决.一番风过雨过后..终于找到原因并解决了. 引发问题的css背景写法: 1 background:url(image url) no-repeat 0 0; 2 @includ

IText&amp;Html2canvas js截图 绘制 导出PDF

Html2canvas JS截图 HTML 1 <div id="divPDF"> 2 需要截图的区域 3 </div> JS 1 <script src="../Js/html2canvas.js"></script> 2 <script type="text/javascript"> 3 4 function getPDF() { 5 html2canvas($('#divPDF')