如何将HTML中的div的内容变成一张图片存储起来

发布网友 发布时间:2022-04-22 00:14

我来回答

2个回答

懂视网 时间:2022-05-12 15:17

这篇文章主要介绍了关于如何利用html2canvas 将html代码转为图片,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

html2canvas,这是一个非常著名的从浏览器网页截图的开源库,使用很方便,功能也很强大。这

转换代码到图片使用

html2canvas,这是一个非常著名的从浏览器网页截图的开源库,使用很方便,功能也很强大。

使用 html2canvas

html2canvas 的使用非常简单,简单到只需要传入一个 DOM 元素,然后通过回调拿到 canvas:

在实际使用的时候,有两个注意点:

1.html2canvas 通过解析元素实际的样式来生成 canvas 图片内容,因此它对元素实际的布局和视觉显示有要求。如果要完整截图,最好将元素从文档流中出来(例如 position:absolute)

2.默认生成的 canvas 图片在 retina 设备上显示很模糊,处理成 2 倍图能解决这个问题:

var w = $("#code").width(); 
var h = $("#code").height();//要将 canvas 的宽高设置成容器宽高的 2 倍 
var canvas = document.createElement("canvas"); 
 canvas.width = w * 2; 
 canvas.height = h * 2; 
 canvas.style.width = w + "px"; 
 canvas.style.height = h + "px"; 
var context = canvas.getContext("2d");//然后将画布缩放,将图像放大两倍画到画布上 
 context.scale(2,2); 
 html2canvas(document.querySelector("#code"), {  
canvas: canvas,  
 onrendered: function(canvas) 
{  ... 
 } 
});

使用 html2canvas的实际案例

1.html代码结构

<section class="share_popup" id="html2canvas"> 
<p>html2canvas 的使用非常简单,简单到只需要传入一个 DOM 元素,然后通过回调拿到 canvas</p> 
<p><img src="1.jpg"></p> 
<p>html2canvas 的使用非常简单,简单到只需要传入一个 DOM 元素,然后通过回调拿到 canvas</p> 
 </section>

2.js代码结构

var str = $('#html2canvas'); 
//console.log(str); 
html2canvas([str.get(0)], { 
 onrendered: function (canvas) { 
 var image = canvas.toDataURL("image/png"); 
 var pHtml = "<img src="+image+" />"; 
 $('#html2canvas').html(pHtml); 
 } 
});

热心网友 时间:2022-05-12 12:25

方法:搜索 html2canvas ,可以吧页面dom元素转化成canvas
canvas可以作为图片上传。canvas相关的可以百度查查。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com