亚洲乱色熟女一区二区三区丝袜,天堂√中文最新版在线,亚洲精品乱码久久久久久蜜桃图片,香蕉久久久久久av成人,欧美丰满熟妇bbb久久久

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

snapDOM:一個(gè) 100 % 純 Web API、零依賴、極致性能的 DOM-to-Image 截圖庫(kù),代替 html2canvas

admin
2025年7月29日 12:2 本文熱度 115

天下苦html2canvas久矣,終于可以好好截個(gè)dom圖了

前端項(xiàng)目里,把任意 HTML 片段變成可下載的圖片 往往是一件麻煩事:樣式丟失、字體跑偏、跨域圖片報(bào)錯(cuò)、性能拖慢頁(yè)面……

html2canvas太卡了,而且各種bug,又不更新,實(shí)在用的難受。

snapDOM 正是為了解決這些痛點(diǎn)而生——它來(lái)自 Zumly 團(tuán)隊(duì),是一個(gè) 100 % 純 Web API、零依賴、極致性能 的 DOM-to-Image 庫(kù)。


它到底能做什么?

  • 全量捕獲
    不管是普通元素、偽元素(::before / ::after / ::first-letter)、還是 Shadow DOM / Web Component,統(tǒng)統(tǒng)能打包進(jìn)最終圖片。
  • 多格式輸出
    默認(rèn)生成 SVG,一行代碼就能轉(zhuǎn)成 PNG / JPG / WebP / Canvas,甚至直接觸發(fā)下載。
  • 樣式與資源原樣保留
    內(nèi)聯(lián)字體、背景圖、Icon Font,視覺(jué)完全一致。
  • 跨域圖片兜底支持
    自帶 crossOrigin,再配合 useProxy,解決 CORS。
  • 飛快
    從 v1.8.0 以來(lái)速度翻倍,復(fù)雜大頁(yè)面也能在毫秒級(jí)完成截圖。官方基準(zhǔn)測(cè)試?yán)?,相?html2canvas 快了一個(gè)數(shù)量級(jí)。

一分鐘上手

安裝

# NPM
npm i @zumer/snapdom

# 或者 Yarn
yarn add @zumer/snapdom

CDN 用戶直接引入:

<script src="https://cdn.jsdelivr.net/npm/@zumer/snapdom/dist/snapdom.min.js"></script>

ESM 寫法:

import { snapdom } from 'https://cdn.jsdelivr.net/npm/@zumer/snapdom/dist/snapdom.mjs';

最簡(jiǎn)用法

const target = document.querySelector('#capture-me');

// 一句到位:拿到 PNG 節(jié)點(diǎn)并掛到頁(yè)面
const imgEl = await snapdom.toPng(target);
document.body.appendChild(imgEl);

復(fù)用導(dǎo)出

const capture = await snapdom(target, { scale2 }); // 2× 像素

await capture.download({ format'jpg'filename'my-shot' }); // 下載 JPG

snapdom() 返回的對(duì)象還能:

capture.toCanvas();
capture.toBlob();   // 拿純 SVG Blob
capture.toWebp();   // 生成 WebP

常用選項(xiàng)

{
  compresstrue,        // 精簡(jiǎn)多余樣式
embedFontsfalse,     // 是否內(nèi)聯(lián)字體(圖標(biāo)字體默認(rèn)強(qiáng)制)
scale1,              // 整體縮放倍率
width400,            // 指定輸出寬度(保持比例)
height200,           // 指定輸出高度(保持比例)
backgroundColor'#fff',
quality0.9,          // JPG / WebP 質(zhì)量
useProxy'https://corsproxy.io/?url='// CORS 兜底
}

Tip:同時(shí)設(shè)置 scale 與 width / height 時(shí),scale 優(yōu)先生效。


性能加速技巧

1. 資源預(yù)加載

頁(yè)面復(fù)雜或圖片眾多時(shí),先執(zhí)行一次:

import { preCache } from '@zumer/snapdom';

await preCache(document.body); // 預(yù)熱所有外鏈資源

2. 按需過(guò)濾

排除無(wú)關(guān)節(jié)點(diǎn),進(jìn)一步壓縮執(zhí)行時(shí)間:

snapdom(target, {
  exclude: ['.debug-banner''.ad-slot']
});

何時(shí)不適合用?

  • ? 需要截圖 <iframe> 時(shí)(暫不支持)。
  • ? Safari 嚴(yán)格要求 WebP,而你必須用 WebP 格式,這會(huì)被自動(dòng)降級(jí)成 PNG——介意的話請(qǐng)手動(dòng)改用其他格式。

貢獻(xiàn) & 本地開(kāi)發(fā)

git clone https://github.com/zumerlab/snapdom.git
cd snapdom
npm install
npm run compile      # 打包 ESM / CJS / UMD
npm test             # Vitest + Playwright
npm run test:benchmark

歡迎提 PR!


資源鏈接

    資源包自取吧兄弟們:

    https://pan.xunlei.com/s/VOVfyTKY-9Ph8l8wQPRb27ukA1 

    動(dòng)手試試,給你的截圖體驗(yàn)提個(gè)速吧 ??

    ?


    該文章在 2025/7/29 12:05:22 編輯過(guò)
    關(guān)鍵字查詢
    相關(guān)文章
    正在查詢...
    點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
    點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
    點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
    點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
    Copyright 2010-2025 ClickSun All Rights Reserved