当前位置: 首页 > 科技观察

找到了10个不错的JavaScript图像处理库

时间:2023-03-17 17:02:37 科技观察

本文由作者授权在JavaScript中处理图像可能非常困难和繁琐。幸运的是,有许多库可以使这变得容易得多。下面介绍一些图像处理库。1.Pica示例地址:http://nodeca.github.io/pica/demo/Github:https://github.com/nodeca/picapica一个高质量高性能的图片缩放JS库,可以实现在浏览器,目标是在浏览器中实现最快的高质量图像缩放。它会自动从web-workers、webassembly、createImageBitmap和纯JS中选择最佳可用技术。Pica是一个底层开发库,进行数学计算,尽可能减少封装的影响。如果缩放二值图像,需要先将其加载到画布中(然后另存为blob)。2.Lena.js示例地址:https://fellipe.com/demos/lena-js/使用说明:https://ourcodeworld.com/articles/read/515/how-to-add-image-filters-photo-effects-to-images-in-the-browser-with-javascript-using-lena-jsGithub:https://github.com/davidsonfellipe/lena.js这个库主要是给图片添加滤镜。3、Compressor.js示例地址:https://fengyuanchen.github.io/compressorjs/Github:https://github.com/fengyuanchen/compressorjsCompressor.js是一个JavaScript图片压缩器。压缩是使用浏览器的本机canvas.toBlobAPI执行的,这意味着它是有损的。通常使用此方法在客户端上传图像文件之前对其进行预压缩。4.Fabric.js案例地址:http://fabricjs.com/案例讲解:http://fabricjs.com/articles/Github:https://github.com/fabricjs/fabric.jsFabric是一个强大而简单的JSCanvas库,我们可以用它在Canvas上创建、填充图形,以及用渐变色填充图形。组合图文(包括组合图文、图文、图片等)等一系列功能。简单的说,我们可以用Fabric以相对简单的方式实现更复杂的Canvas功能。我们还可以使用Fabric.js库来更改这些对象的一些属性,例如它们的颜色、透明度、网页上的深度位置或这些对象的选择组。Fabric.js还可以将SVG图像转换为JavaScript数据,可用于将它们放入元素中。5、Blurifyblurify.js是一款小巧实用的js图片模糊效果插件。使用此js插件可以模糊任何图像。案例地址:https://justclear.github.io/blurify/Github:https://github.com/JustClear/blurify6。MergeimageGithub:https://github.com/lukechilds/merge-images这个库可以轻松地将图像合成在一起。有时,使用画布可能有点繁琐,特别是如果您只需要画布上下文来处理相对简单的事情,例如将一些图像合并在一起。merge-images将所有重复性任务抽象为一个简单的函数调用。图像可以相互重叠并重新定位。该函数返回一个解析为base64数据URI的Promise。支持浏览器和Node.js。7.cropper.js示例地址:https://fengyuanchen.github.io/cropperjs/Github:https://github.com/fengyuanchen/cropperjscropperjs是一个非常强大但简单的图片裁剪工具,它可以非常灵活的配置,支持手机端使用,支持IE9及以上现代浏览器。8.CamanJS示例地址:http://camanjs.com/examples/Github:https://github.com/meltingice/CamanJS/CamanJS是一个基于Canvas处理图像的Javascript库,结合了易用的界面和先进高效的图像编辑技术。CamanJS很容易扩展新的过滤器和插件,并具有广泛的图像编辑功能。它是完全独立的库,支持在NodeJS和浏览器中工作。9.MarvinJ官网:https://www.marvinj.org/en/index.htmlGithub:https://github.com/gabrielarchanjo/marvinjMarvinJ是一个纯JavaScript图像处理框架,衍生自MarvinFramework。MarvinJ简单而强大,适用于许多不同的图像处理应用程序。Marvin提供了许多算法来操纵颜色和外观。Marvin还可以自动检测功能。使用边缘、角和形状等基本图像特征的能力是图像处理的基础。该插件有助于检测和分析物体的角点,以确定场景中主要物体的位置。由于这些原因,可以自动裁剪对象。10.Grade示例地址:https://benhowdle89.github.io/grade/Github:https://github.com/benhowdle89/gradegrade.js是一个JS插件,可以根据两种主色生成背景渐变图片。它的原理是提取图像的两种主要颜色,然后将这两种颜色作为渐变的开始和结束颜色应用到图像容器中。作者:MahdhiRezvi译者:前端小智来源:medium原文:https://blog.bitsrc.io/image-manipulion-libraries-for-javascript-187fde2ad5af关注下方二维码。转载本文请联系前端小智公众号。