如何利用javascript保存浏览器div内容为图片

 时间:2026-02-14 04:13:32

1、先去git或随便哪里下载html2canvas,这个东西好用且强大。

如何利用javascript保存浏览器div内容为图片

2、核心代码很简单

html2canvas($("#content"), {

                onrendered: function(canvas) {

                    document.body.appendChild(canvas);

                }

});

如果要保存,或是其它操作可以写在function中

如何利用javascript保存浏览器div内容为图片

3、现在在页面上加一个简单的div

<div id=content style="width:150px;height:150px;border:1px lightblue solid">

    <span>Hello world</span>

    <br>

    <span><h2>Are you hear me?!</h2></span>

</div>

再加一个save按钮

如何利用javascript保存浏览器div内容为图片

4、全部代码如下图

如何利用javascript保存浏览器div内容为图片

5、点击save按钮,就可以看到一个和div一模一样的canvas出现在下方

如何利用javascript保存浏览器div内容为图片

6、如果希望保存成image,推荐一个好用的插件canvas2image

 Canvas2Image.saveAsPNG(canvas); 即可

如何利用javascript保存浏览器div内容为图片

7、那html2canvas是如何做到的呢?html是无法转换成canvas的,所以它应该是先转换成svg,然后再把svg转换成canvas(我并没有仔细阅读源码,这部分是个人的猜测)

接下来介绍一种直接把dom转成svg,然后在通过svg转换成canvas的方法。不过这里只提供一个思路,例子本身毛病挺多的,主要用到的是svg中的foreignObject

如何利用javascript保存浏览器div内容为图片

8、所有页面代码如下,在浏览器上运行后可以看到,<foreignObject>中的内容以canvas的形式出现在了页面上

如何利用javascript保存浏览器div内容为图片

  • 使用组策略删除或启用文件夹属性中的安全选项卡
  • C# ProgressBar 控件属性详解及使用
  • Notepad3笔记本如何启用标记匹配?
  • 谷歌浏览器怎么设置网站是否能调用上网位置信息
  • url 如何设定search
  • 热门搜索
    双离合什么意思 阿司匹林肠溶片的作用 燕麦片的功效和作用 什么学校 参加婚礼穿什么 枳实的功效与作用 moreover什么意思 夜来香什么时候开花 人为什么会害怕 运动会开幕式主持词