htmlcanvas2修改版生成web或H5高清页面,解决长页面问题 独家

htmlcanvas2修改版生成web或H5高清页面,解决长页面问题 独家,注意注意,此版本引入的html2canvas.js文件为修改版,不要使用自己下载的哦,一定要换掉,解决了生成图片不高清的问题,并修复了B...

htmlcanvas2修改版生成web或H5高清页面,解决长页面问题 独家,注意注意,此版本引入的html2canvas.js文件为修改版,不要使用自己下载的哦,一定要换掉,解决了生成图片不高清的问题,并修复了BUG,老版本只能截取一屏幕页面,如果超出一屏的并且滚动了,生成的图片就会不完整有黑边,那是因为官方版本的生成图片时需要从左上角开始,此版本完美解决这种问题。


引入JS<script src="http://www.duanlonglong.com/link/gaoqing/html2canvas.js"></script>或<script src="http://www.duanlonglong.com/link/gaoqing/html2canvas.min.js"></script>

用我的记得引入JQ哦,jquery


以下是从demo里粘过来的,TargetNode为要生成图片的DIV,将谁生成图片就将谁的ID设为TargetNode。  canvas.toDataURL("image/jpeg")为图片本地临时路径,将$('.img')里面的img改成自己的img标签的类名。

$("#downpdf").on("click", function() {
var canvas2 = document.createElement("canvas");
let _canvas = document.querySelector('#TargetNode');
var w = parseInt(window.getComputedStyle(_canvas).width);
var h = parseInt(window.getComputedStyle(_canvas).height);
//将canvas画布放大若干倍,然后盛放在较小的容器内,就显得不模糊了
canvas2.width = w * 2;
canvas2.height = h * 2;
canvas2.style.width = w + "px";
canvas2.style.height = h + "px";
//可以按照自己的需求,对context的参数修改,translate指的是偏移量   
var context = canvas2.getContext("2d");
context.scale(2, 2);
html2canvas(document.querySelector('#TargetNode'), {
canvas: canvas2
}).then(function(canvas) {
pic = canvas;
console.log(pic.toDataURL())
$('.img').attr('src', canvas.toDataURL("image/jpeg"));
});
});

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
admin
admin

651 篇文章

作家榜 »

  1. admin 651 文章
  2. 粪斗 185 文章
  3. 王凯 92 文章
  4. 廖雪 78 文章
  5. 牟雪峰 12 文章
  6. 李沁雪 9 文章
  7. 全易 2 文章
  8. Stevengring 0 文章