当前位置: 首页 > news >正文

【vue】前端使用modern-screenshot截取屏幕截图

modern-screenshot介绍

modern-screenshot是一款轻量级的JavaScript库,能够让您以数据URL或多种格式(如PNG、SVG、JPEG、WebP)保存网页元素的截图。它源于html-to-image项目,经过优化,提供更现代的解决方案,并支持Singleton上下文和Web Worker,使得连续截图速度更快。

导入

npm i modern-screenshot

封装与使用(也可以直接在页面中使用)

js中:
可以根据自己需求修改为动态传递dom,配置中屏幕宽高可根据自己需求更改或直接设置(不设置会根据div大小自适应),这里需求是大屏固定尺寸故直接传参写死。

import {domToJpeg} from "modern-screenshot";
/*
* 获取屏幕截图方法
* **/
export async function  downloadImage() {const node = document.getElementById('container')if (!node){console.log("找不到dom,终止导出")return ;}try {const dataUrl = await domToJpeg(node, {// 传入配置scale: 3,width:2560,height:1440});// 通过a标签自动下载图片const a = document.createElement('a');a.href = dataUrl;a.download = new Date().getTime() + '.jpg';a.click();a.remove();ElMessage.success('图片生成成功,请耐心等待下载');}catch (error) {ElMessage.error('图片生成失败');}}

页面中调用(vue3):

import {downloadImage} from "@/utils/global";
function downImg() {downloadImage()
}

http://www.mrgr.cn/news/60196.html

相关文章:

  • LeetCode 107.二叉树的层次遍历 II
  • 模拟信号采集显示器+GPS同步信号发生器制作全过程(焊接、问题、代码、电路)
  • Python条形图 | 指标(特征)重要性图的绘制
  • 前端处理API接口故障:多接口自动切换的实现方案
  • 等保测评:安全计算环境的详细讲解
  • 数据结构 ——— 用队列实现栈
  • 【java】java的基本程序设计结构02-数据类型
  • 如何管理供应商、实现供应商协同管理?
  • 高效MySQL缓存策略
  • 【ArcGISPro】you must install or update .net to run this application.
  • 聚观早报 | EZ-6正式上市;小米15系列售价或将上调
  • 校园气膜体育馆:学生锻炼与成长的新空间—轻空间
  • 【MySQL 保姆级教学】表数据的操作--下(8)
  • 51c嵌入式~IO合集1
  • 【golang】json.Unmarshal接收JSON数据并验证特定的字段
  • Java 基础教学:流程控制-循环结构
  • Linux下的常见指令以及权限
  • 高清 MV 无字幕视频素材
  • VUE3实现古典音乐网站源码模板
  • 直播系统源码技术搭建部署流程及配置步骤
  • 使用田口实验获取优化算法的参数最优组合
  • MATLAB+opencv人脸疲劳检测
  • 大厂面经:京东嵌入式面试题及参考答案
  • Redis-06 Redis高可用集群架构原理与搭建
  • 【MATLAB源码-第194期】基于matlab的MB-OFDM仿真,超宽带(UWB)无线传输。对比LS/DFT及其改进算法。
  • 【GESP】C++一级练习BCQM3085,最大的数