1. 程式人生 > >html2canvas生成圖片(圖片樣式和顯示樣式不一致)

html2canvas生成圖片(圖片樣式和顯示樣式不一致)

UNC ott function true 有用 splay scrip then gin

//引入

<script src="/static/webadmin/js/html2canvas.min.js"></script>

<a style="margin-bottom:0px;display:none;" id="create_image" class="btn btn-warning" download="下載的圖片"><i class="fa fa-download">&nbsp;下載圖片</i></a>

//克隆一個table(因為顯示樣式與導出樣式不一致,所有用此方法解決)
var cloneDom = $(".dataTables_list").clone(true);

//排版,不顯示在頁面上(不能用display:none,會導致無法生成url)
cloneDom.css({ "position": "absolute", "top": "0px", "z-index": "-1", "width":600 });
$("body").append(cloneDom);

//生成圖片下載鏈接
html2canvas(cloneDom[0]).then(function(canvas)
{
  var imgUri = canvas.toDataURL();

  //銷毀克隆對象
  cloneDom.empty();

  $("#create_image").attr(‘href‘, imgUri);
  $("#create_image").css("display","");
})

html2canvas生成圖片(圖片樣式和顯示樣式不一致)