html2canvas截取屏幕的方法
html2canvas截取屏幕的方法
需要放在服务上运行,否则会报错,

放在服务器里,完美运行
处理截屏模糊的方法
html2canvas 0.5.0-beta3解决截图模糊问题
需要引入html2canvas 0.5.0-beta3
 var shareContent = $(".hbdiv");// 需要绘制的部分的 (原生)dom 对象 ,注意容器的宽度不要使用百分比,使用固定宽度,避免缩放问题
        var width = shareContent[0].offsetWidth;  // 获取宽度
       var height = shareContent[0].clientHeight; // 获取高
       var offsetTop = shareContent[0].offsetTop;  //元素距离顶部的偏移量
       var canvas = document.createElement('canvas');  //创建canvas 对象
        var context = canvas.getContext('2d');
        var scaleBy=10;  //获取像素密度的方法 (也可以采用自定义缩放比例)
    //var scaleBy=hqmd(context);
        canvas.width = width * scaleBy;   //这里 由于绘制的dom 为固定宽度,居中,所以没有偏移
        canvas.height = (height + offsetTop) * scaleBy;  // 注意高度问题,由于顶部有个距离所以要加上顶部的距离,解决图像高度偏移问题
        context.scale(scaleBy, scaleBy);
          var opts = {
                    scale:scaleBy, // 添加的scale 参数
                    canvas:canvas, //自定义 canvas
                    width:width, //dom 原始宽度
                    height:height //dom 原始高度
                };
        html2canvas($('.hbdiv'), opts).then(function (canvas) {
               var strDataURI = canvas.toDataURL("image/jpeg");
                    $("body").html('');
                    $("body").append($("<img>").attr("class", 'bimg').attr("src", strDataURI));
                });
获取像素密度方法
function hqmd(context){
             var backingStore = context.backingStorePixelRatio ||
                     context.webkitBackingStorePixelRatio ||
                     context.mozBackingStorePixelRatio ||
                     context.msBackingStorePixelRatio ||
                     context.oBackingStorePixelRatio ||
                     context.backingStorePixelRatio || 1;
             return (window.devicePixelRatio || 1) / backingStore;
         }
html2canvas截取屏幕的方法的更多相关文章
- jquery 截取屏幕
		<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ... 
- shell截取字符串的方法
		参考文献: linux中shell截取字符串方法总结 [Linux]如何在Shell脚本中计算字符串长度? 截取字符串的方法一共有八种,主要为以下方法 shell中截取字符串的方法有很多中, ${ex ... 
- paip.截取字符串byLastDot方法总结uapi python java php c# 总结
		paip.截取字符串byLastDot方法总结uapi python java php c# 总结 ========uapi left_byLastDot right_byLastDot 目前 ... 
- shell中截取字符串的方法总结
		shell中截取字符串的方法有很多种, ${expression}一共有9种使用方法. ${parameter:-word} ${parameter:=word} ${parameter:?word} ... 
- Android实例-程序界面内截取屏幕(XE8+小米2)
		结果: 1.只能截取程序界面内的图片. 2.图片有点不清楚,自己设置清楚度. 实例代码: unit Unit1; interface uses System.SysUtils, System.Type ... 
- c#中字符串截取使用的方法
		AndyZhang welcome to java world c#中字符串截取使用的方法 String substring(int beginIndex) String substring(int ... 
- cocos2d-x 截取屏幕可见区域
		在游戏中,我们经常需要分享到社交网络的功能.分享时,我们时常会需要用到截屏的功能.目前网上的文章虽然很多,但是都是截取的 设计分辨率(DesignResolutionSize)大小的屏幕,而这个并不是 ... 
- PHP截取中文字符串方法总结
		<?php @header('Content-type: text/html; charset=UTF-8'); $arr = "sa撒的发dfa多少sfd看sdf得12上24飞452 ... 
- java中把list列表转为arrayList以及arraylist数组截取的简单方法
		java中把list列表转为arrayList以及arraylist数组截取的简单方法 package xiaobai; import java.util.ArrayList; import java ... 
随机推荐
- np一些基本操作1
			##生成一个一维数组import numpy as np;nb7 = np.arange(0,100,2);print(nb7)print("======================== ... 
- linux NC网络通信工具的安装
			由于开发socket一类工具需要用到管道进行测试,就想到安装个linux nc工具来测试 于是上网找了个rpm安装完发现不可用(公司服务器没外网) 报错内容: [root@rhel071 instal ... 
- OSG实现正八面体剖分成球
			#include<Windows.h> #include<osg/Node> #include<osg/Geode> #include<osg/Group&g ... 
- 2019-8-30-C#-如何在项目引用x86-x64的非托管代码
			title author date CreateTime categories C# 如何在项目引用x86 x64的非托管代码 lindexi 2019-08-30 08:53:52 +0800 20 ... 
- 在Apline编译Mariadb 常见错误
			/root/mariadb-10.3.11/storage/tokudb/PerconaFT/portability/toku_assert.cc:52:22: fatal error: execin ... 
- c语言学习笔记 - 枚举类型
			今天学习了c语言的枚举类型的使用,可能是PHP里没使用过,开始看的时候还是觉得有点怪,后来做了下例子才理解,这里做个笔记记录一下. #include <stdio.h> enum anim ... 
- git commit规范工具
			npm install -g commitizen commitizen init cz-conventional-changelog --save --save-exact 以后,凡是用到git c ... 
- volatile和指令重排序
			volatile 的作用 1 精致指令重排序 2 多线程访问同一个变量的时候,每次都是取最新的,而不会使用当前cpu缓存的那一份. 
- Dock镜像初探索
			一.安装CentOS版DockerCE 1.1 卸载旧的版本 yum remove docker \ docker-client \ docker-client-latest \ docker-com ... 
- DOM4J -(XML解析包)
			DOM4J - 简介 是dom4j.org出品的一个开源XML解析包.Dom4j是一个易用的.开源的库,用于XML,XPath和XSLT.它应用于Java平台,采用了Java集合框架并完全支持DOM, ... 
