JavaScript 截取 HTML 生成图片

什么是 html2canvas

html2canvas 是一个强大的 JavaScript 库,它可以将 HTML 元素渲染成画布(Canvas),然后将其转换为图像。这个库支持大多数现代浏览器,并且易于使用。

安装 html2canvas

使用 npm 进行安装

js 复制代码
npm install html2canvas

也可以通过 CDN 引入

js 复制代码
<script src="https://cdn.bootcdn.net/ajax/libs/html2canvas/1.4.1/html2canvas.min.js"></script>

基本用法

js 复制代码
<template>
  <div class="html2Img_wrapper" ref="containerRef">
    <img src="/src/assets/img.jpg" width="300" />
    <h3>ryutyrurt</h3>
    <button @click="handleHtml2Img">转换为图片</button>
  </div>
</template>
<script setup>
import { ref, nextTick } from "vue";
const containerRef = ref();

const handleHtml2Img = () => {
  html2canvas(containerRef.value, {
    scale: 2,
    useCORS: true,
    logging: true,
  })
    .then((canvas) => {
      // 方法一:转为base64;
      const img = canvas.toDataURL("image/png");
      const imgElement = document.createElement("img");
      imgElement.src = img;
      document.body.appendChild(imgElement);
      
      // 方法二:生成blob;
      canvas.toBlob((blob) => {
        const url = URL.createObjectURL(blob);
        const a = document.createElement("a");
        a.href = url;
        a.download = "页面截图.png";
        document.body.appendChild(a);
        a.click();
        setTimeout(() => {
          URL.revokeObjectURL(url);
          a.remove();
        }, 100);
        console.log(url);
      });
    })
    .catch((err) => {
      console.log("转换失败:", err);
    });
};
</script>

拓展

js如何见html转换成图片
前端实现HTML转图片并导出的完整方案
使用 JavaScript 截取 HTML 并生成图片:html2canvas

相关推荐
kyriewen1 小时前
Skills 榜前 10 我全装了:只有 3 个能直接用
前端·javascript·程序员
IT_陈寒1 小时前
当Java的hashCode遇上Lombok,我的缓存被全清了
前端·人工智能·后端
工控丫丫2 小时前
帆软看板中经常使用的公式函数及经常搭的组合
前端·javascript·数据库
jerrywus2 小时前
我用 GPT-6.1-sol 做了台会讲解的 3D 售货机:60 罐饮料,一口没喝上
前端·agent·claude
孟陬4 小时前
Foobar 技术周刊#159:当看不懂代码时,如何高效排障调试。脏页陷阱:一条只读查询,写入数 TB 数据。推测解码:大模型加速利器
前端·人工智能·后端
Zhao-Jichao4 小时前
AI Prompting for Everyone 课程笔记 - P17 图像生成 Imaging Generation
前端
Highcharts.js4 小时前
智能数据分析组件Orbit 正式发布与快速上手体验教程
前端·人工智能·信息可视化·数据分析系统·highcharts·orbit·智能可视化
Dream-Y.ocean4 小时前
鸿蒙PC平台星图遥感适配实战:基于 Electron 壳方案的纯 JavaScript 遥感图像处理引擎开发
javascript·electron·harmonyos
螺丝钉tina5 小时前
[Playwright ][16]Playwright + TypeScript API 自动化测试实战:API测试
前端·javascript·typescript
小天源6 小时前
智叟云集系统 · 架构与职责分层
服务器·前端·数据库