html5 实现网页截屏 页面生成图片(图文)
来源:互联网 发布:sql 2005 sp4 中文版 编辑:程序博客网 时间:2024/09/21 08:15
html2canvas通过获取页面的DOM和元素的样式信息,并将其渲染成canvas图片,从而实现给页面截图的功能。
因为每个浏览器渲染页面的方式都不尽相同,所以生成的图片也不太一样。
环境要求: jQuery
兼容性: Firefox 3.5+, Chrome, Opera, IE9
官网主页: http://html2canvas.hertzen.com/
测试生成的图片效果 有些元素的样式没有完全展示出来
<html> <head> <meta name="layout" content="main"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script type="text/javascript" src="http://code.jquery.com/jquery-1.8.3.min.js"></script> <script type="text/javascript" src="http://html2canvas.hertzen.com/build/html2canvas.js"></script> <script type="text/javascript" > $(document).ready( function(){ $(".example1").on("click", function(event) { event.preventDefault(); html2canvas(document.body, { allowTaint: true, taintTest: false, onrendered: function(canvas) { canvas.id = "mycanvas"; //document.body.appendChild(canvas); //生成base64图片数据 var dataUrl = canvas.toDataURL(); var newImg = document.createElement("img"); newImg.src = dataUrl; document.body.appendChild(newImg);
<span style="white-space:pre"></span> window.open(newImg.src); } }); }); }); </script> </head> <body> Hello! <div class="" style="background-color: #abc;"> 计算机天堂测试html5页面截图 <br>jsjtt.com </div> <textArea id="textArea" col="20" rows="10" ></textArea> <input class="example1" type="button" value="button"> 生成界面如下: </body></html>
上面的是截取标签BODY内的内容,如果想截取指定DIV内的内容则如下配置:
<html> <head> <meta name="layout" content="main"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script type="text/javascript" src="http://code.jquery.com/jquery-1.8.3.min.js"></script> <script type="text/javascript" src="http://html2canvas.hertzen.com/build/html2canvas.js"></script> <script type="text/javascript" > $(document).ready( function(){ $(".example1").on("click", function(event) { event.preventDefault(); html2canvas(document.getElementById("textArea"), { allowTaint: true, taintTest: false, onrendered: function(canvas) { canvas.id = "mycanvas"; //document.body.appendChild(canvas); //生成base64图片数据 var dataUrl = canvas.toDataURL(); var newImg = document.createElement("img"); newImg.src = dataUrl; document.body.appendChild(newImg);
<span style="white-space:pre"></span> window.open(newImg.src); } }); }); }); </script> </head> <body> Hello! <div class="" style="background-color: #abc;"> 计算机天堂测试html5页面截图 <br>jsjtt.com </div> <textArea id="textArea" col="20" rows="10" ></textArea> dddddd <input class="example1" type="button" value="button"> 生成界面如下: </body></html>
0 1
- html5 实现网页截屏 页面生成图片(图文)
- html5 实现网页截屏 页面生成图片(图文)
- html5 实现网页截屏 页面生成图片(图文)
- html5 实现网页截屏 页面生成图片(图文)
- html5 实现网页截屏 页面生成图片(图文)
- html5 实现网页截屏 页面生成图片(图文)
- html5 实现动态网页截屏 页面生成图片并打印(图文)
- html5 实现网页截屏 页面生成图片(源代码)
- html5 实现网页截屏 页面生成图片
- html5 实现网页截屏 页面生成图片(源代码)
- 网页生成图片代码 IViewObject接口实现
- html5实现图片自适应手机屏幕页面的css
- HTML5网页页面坐标获取
- html5的FileReader实现图片上传预览并生成base64
- html5实现网页全屏
- asp.net 实现输入网址生成当前网页的图片
- html5的页面生成标签
- html5上传图片到页面
- .layer-list 使用
- Duplicate entry '0' for key 'PRIMARY'
- 距离度量
- Swift 的学习笔记
- 对于Retain和Assign属性的理解
- html5 实现网页截屏 页面生成图片(图文)
- 结构体内数据变量内存分配详解
- jsp报错,The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
- 软件结构 耦合性
- Codeforces Round #290 (Div. 1) A. Fox And Names
- 机房重构总结(一)
- HTTP Servlet 的service() 方法
- android开发之自定义ViewGroup实现竖向引导界面
- Sublime Text 插件之Emmet