简介
Image-processor 是一个 Node.js 下的图像编辑库,可以通过简单的配置来实现图像的旋转、裁剪、缩放、水印等操作。它基于开源的 GraphicsMagick 和 ImageMagick 库,可支持多种格式的图像,包括 JPEG、PNG、GIF、SVG 等。
安装
安装 image-processor 最简单的方法就是使用 npm:
npm install image-processor --save
快速开始
这里以一个将图片裁剪成正方形的例子来介绍如何使用 image-processor。
引入库
const ImageProcessor = require('image-processor');
创建 ImageProcessor 实例
const ip = new ImageProcessor();
设置源文件
const srcPath = '/path/to/source/image.jpg'; ip.setSrcPath(srcPath);
设置目标文件
const destPath = '/path/to/destination/image.jpg'; ip.setDestPath(destPath);
设置图像裁剪
ip.crop({ width: 600, height: 600, gravity: 'Center' });
执行操作
ip.process().then((result) => { console.log(result); }).catch((err) => { console.error(err); });
API 文档
setSrcPath(path)
设置源文件路径。
参数
path
:源文件路径,可以是一个本地路径或 URL。
setDestPath(path)
设置目标文件路径。
参数
path
:目标文件路径,可以是一个本地路径或 URL。
crop(options)
设置图像裁剪。
参数
options
:一个对象,包含以下属性:width
:裁剪后图像的宽度。height
:裁剪后图像的高度。gravity
:裁剪时的对齐方式,默认为'Center'
。可选值包括'NorthWest'
、'NorthEast'
、'North'
、'West'
、'East'
、'SouthWest'
、'SouthEast'
、'South'
和'Center'
。
resize(options)
设置图像缩放。
参数
options
:一个对象,包含以下属性:width
:缩放后图像的宽度。height
:缩放后图像的高度。fit
:缩放方式,默认为'Contain'
。可选值包括'Cover'
、'Contain'
、'Fill'
、'Inside'
和'Outside'
。
rotate(degrees)
设置图像旋转。
参数
degrees
:旋转角度,可以是一个整数或浮点数,单位为度。
flip(axis)
设置图像翻转。
参数
axis
:翻转轴,默认为'horizontal'
。可选值包括'horizontal'
和'vertical'
。
flop()
设置图像翻转。相当于 flip('horizontal')
。
watermark(options)
设置图像水印。
参数
options
:一个对象,包含以下属性:path
:水印图像的路径。opacity
:水印的不透明度,默认为0.5
。position
:水印位置,默认为'SouthEast'
。可选值包括'NorthWest'
、'NorthEast'
、'North'
、'West'
、'East'
、'SouthWest'
、'SouthEast'
、'South'
和'Center'
。
process()
执行操作并写入目标文件。
返回值
返回一个 Promise
对象,当操作完成时会传递一个 result
对象,包含以下属性:
srcPath
:源文件路径。destPath
:目标文件路径。size
:目标文件的大小。type
:目标文件的 MIME 类型。
如果操作出错,会传递一个错误对象。
总结
本文介绍了 npm 包 image-processor 的使用方法,并以一个简单的例子展示了其基本功能。除了上述介绍的方法外,image-processor 还提供了丰富的图像处理功能,可以根据具体需求进行配置。使用 image-processor 可以让我们更加轻松地进行图像处理,并快速地实现我们的需求。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60056cda81e8991b448e684e