本篇文章给大家整理和分享几个前端文件处理相关的实用工具库,共分成6大类一一介绍给大家,希望对大家有所帮助。
1. pdf(1)pdf.jspdf.js是使用 html5 构建的可移植文档格式 (pdf) 查看器。它由社区驱动并受 mozilla 支持,目标是创建一个通用的、基于 web 标准的平台来解析和呈现 pdf。
github(⭐️ 39.2k):https://github.com/mozilla/pdf.js
(2)jspdfjspdf 是一个使用 javascript 语言生成 pdf 的开源库,是一个用于生成 pdf 的领先的 html5 客户端解决方案。
github(⭐️ 24.6k): https://github.com/parallax/jspdf
(3)pdfmake在纯 javascript 中用于服务器端和客户端的 pdf 文档生成库。
github(⭐️ 10.2k): https://github.com/bpampuch/pdfmake
(4)pdf-libpdf-lib 可以在任何 javascript 环境中创建和修改 pdf 文档。它旨在解决 javascript 生态系统对 pdf 操作(尤其是 pdf修改)缺乏强大支持的问题。可以用于任何现代 javascript 运行时,如 node、browser、deno 和 react native 等。
github(⭐️ 4.1k): https://github.com/hopding/pdf-lib
(5)pdfkitpdfkit 是一个用于 node 和浏览器的 pdf 文档生成库,可以轻松创建复杂的多页可打印文档。api 包含可链接性,并包括低级功能以及更高级别功能的抽象。pdfkit api 的设计很简单,因此生成复杂的文档通常只需几个函数调用即可。
github(⭐️ 8.2k): https://github.com/foliojs/pdfkit
(6)react-pdfreact-pdf 是一个用于在浏览器和服务器上创建 pdf 文件的 react 渲染器。
github(⭐️ 10.9k): https://github.com/diegomura/react-pdf
2. 图片(1)sharpsharp 是一个高性能的 node.js 图像处理库,调整 jpeg、png、webp、avif 和 tiff 图像大小的最快模块。
github(⭐️ 22.7k): https://github.com/lovell/sharp
(2)cropperjscropperjs 是一个 javascript 图像裁剪器,支持29个裁剪选项、27种方法、6个事件、缩放、旋转等。
github(⭐️ 10.8k): https://github.com/fengyuanchen/cropperjs
(3)tui.image-editortui.image-editor 是一个使用 html5 canvas 的全功能图像编辑器。它易于使用并提供强大的过滤器。
github(⭐️ 5.2k): https://github.com/nhn/tui.image-editor
(4)compressorjsjavascript 图像压缩器。使用浏览器原生的 canvas.toblob api 来做压缩工作,即有损压缩,异步压缩,在不同的浏览器有不同的压缩效果。一般在客户端上传之前使用这个来预压缩图片。
github(⭐️ 3.9k): https://github.com/fengyuanchen/compressorjs
(5)viewerjsviewerjs 是一个 javascript 图像查看器,支持 52 个查看选项、23 种操作方法、17 个事件、旋转、移动、缩放等。
github(⭐️ 6.6k): https://github.com/fengyuanchen/viewerjs
(6)omagesloadedomagesloaded 是一个用来检查图像何时加载的 javascript 库。
github(⭐️ 8.7k): https://github.com/desandro/imagesloaded
3. 音视频(1)video.jsvideo.js 是一个为 html5 世界从头开始构建的网络视频播放器。它支持 html5 视频和媒体源扩展,以及其他播放技术,如 youtube 和 vimeo(通过插件)。它支持在台式机和移动设备上播放视频。
github(⭐️ 8.7k): https://github.com/videojs/video.js
(2)plyrplyr 是一个简单、轻量级、可访问和可定制的 html5、youtube 和 vimeo 媒体播放器,支持现代浏览器。
github(⭐️ 22.3k): https://github.com/sampotts/plyr
(3)mediaelement.jsmediaelement.js 是一个html5 <audio> 或 <video> 播放器,支持 mp4、webm 和 mp3 以及 hls、dash、youtube、facebook、soundcloud 等,具有通用 html5 mediaelement api,可在所有浏览器中实现一致的 ui。
github(⭐️ 7.9k): https://github.com/mediaelement/mediaelement
(4)xgplayer西瓜播放器是一个web视频播放器类库,它本着一切都是组件化的原则设计了独立可拆卸的 ui 组件。更重要的是它不只是在 ui 层有灵活的表现,在功能上也做了大胆的尝试:摆脱视频加载、缓冲、格式支持对 video 的依赖。尤其是在 mp4 点播上做了较大的努力,让本不支持流式播放的 mp4 能做到分段加载,这就意味着可以做到清晰度无缝切换、加载控制、节省视频流量。同时,它也集成了对 flv、hls、dash 的点播和直播支持。
github(⭐️ 5.4k): https://github.com/bytedance/xgplayer
(5)dplayerdplayer 是一款可爱的 html5 弹幕视频播放器,可帮助人们轻松构建视频和弹幕。
github(⭐️ 12.9k): https://github.com/diygod/dplayer
(6)howler.jshowler.js 是一个现代 web 音频库。它默认为web audio api并回退到html5 audio。这使得在所有平台上使用 javascript 处理音频变得容易且可靠。
github(⭐️ 20.3k): https://github.com/goldfire/howler.js
4. 表格(1)handsontablehandsontable 是一个具有电子表格外观的 javascript 数据网格组件。适用于 react、angular 和 vue。它结合了数据网格功能和类似电子表格的 ux。它提供数据绑定、数据验证、过滤、排序和 crud 操作。
github(⭐️ 16.8k): https://github.com/handsontable/handsontable
(2)ag-gridag grid 是一个功能齐全且高度可定制的 javascript 数据网格。它提供了出色的性能,没有第三方依赖,并且可以与所有主要的 javascript 框架顺利集成。
github(⭐️ 16.8k): https://github.com/ag-grid/ag-grid
(3)x-spreadsheetx-spreadsheet 是一个基于 web 的 javascript(canvas)电子表格。
github(⭐️ 12.6k): https://github.com/myliang/x-spreadsheet
(4)cheetah-gridcheetah-grid 是最快的 web 开源数据表。
github(⭐️ 1.2k): https://github.com/future-architect/cheetah-grid
(5)exceljsexceljs 是一个excel电子表格文件逆向工程项目。可以读取,操作并写入电子表格数据和样式到 xlsx 和 json 文件。
github(⭐️ 9.7k): https://github.com/exceljs/exceljs
(6)sheetjssheetjs 是一个简化的电子表格,用意用来阅读、编辑和导出电子表格,其适用于 web 浏览器和服务器,在 office 365 中受 microsoft 信任。
github(⭐️ 30.6k): https://github.com/sheetjs/sheetjs
5. 文件上传(1)uppyuppy 是一款时尚的模块化 javascript 文件上传器,可与任何应用程序无缝集成。它速度快,具有易于理解的 api,让您不必担心比构建文件上传器更重要的问题。
github(⭐️ 25.5k): https://github.com/transloadit/uppy
(2)filepondfilepond 是一个用于上传文件的 javascript 库,优化图像以加快上传速度,并提供出色、可访问、如丝般流畅的用户体验。
github(⭐️ 12.6k): https://github.com/pqina/filepond
(3)dropzonedropzone 是一个 javascript 库,可以将任何 html 元素转换为 dropzone。这意味着用户可以将文件拖放到上面,dropzone 将显示文件预览和上传进度,并通过 xhr 为你处理上传。
github(⭐️ 16.7k): https://github.com/dropzone/dropzone
(4)vue-upload-componentvue-upload-component 是一个用于 vue.js 的上传组件,支持多文件上传,上传目录,拖拽上传,拖拽目录,以及支持同时上传多个文件等。
github(⭐️ 2.5k): https://github.com/lian-yue/vue-upload-component
(5)upploaduppload 是一个更好的 javascript 图片上传器。它具有 30 多个插件的高度可定制性,完全免费和开源,并且可以与任何文件上传后端一起使用。
github(⭐️ 1.7k): https://github.com/elninotech/uppload
(6)react-dropzonereact-dropzone 是一个为 react 量身定制的,基于html5 的 drop && drag api,可以实现拖拽上传文件的 javascript 库。
github(⭐️ 1.7k): https://github.com/react-dropzone/react-dropzone
6. 其他(1)jszipjszip 是一个使用 javascript 创建、读取和编辑 .zip 文件的库,具有简单的 api。
github(⭐️ 8.1k): https://github.com/stuk/jszip
(2)docxtemplaterdocxtemplater 是一个从 docx/pptx 模板生成 docx/pptx 文档的库。它可以用数据替换 {placeholders} 并且还支持循环和条件。
github(⭐️ 2.2k): https://github.com/open-xml-templating/docxtemplater
(3)textracttextract 是一个 node.js 模块,用于从 html、pdf、doc、docx、xls、xlsx、csv、pptx、png、jpg、gif、rtf 等中提取文本。
github(⭐️ 1.5k): https://github.com/dbashford/textract
(4)pptxgenjspptxgenjs 是一个使用功能强大、简洁的 javascript api 创建 powerpoint 演示文稿。
github(⭐️ 1.6k): https://github.com/gitbrent/pptxgenjs
(5)officegenofficegen 是一个用于 javascript 中 word (docx)、powerpoint (pptx) 和 excell (xlsx) 的独立 office open xml 文件(microsoft office 2007 及更高版本)生成器。
github(⭐️ 2.4k): https://github.com/ziv-barber/officegen
【相关视频教程推荐:web前端】
