A free and fast image compression tool
npm install image-compressorionjs
npm install image-compressorionjs
`
$3
#### 语法
`
new ImageCompressor(file[, options])
`
file
* 类型: File or Blob
用于压缩的目标图像文件。
options
* 类型: Object
* 可选
压缩选项。查看可用选项。
#### 示例
`
`
`
const ImageCompressor = require('image-compressorionjs');
document.getElementById('file').addEventListener('change', (ev) => {
const file = ev.target.files[0];
if (!(file && file.size > 0)) {
return;
}
new ImageCompressor(file, {
quality: 0.8,
success(result){
console.log('success:', result)
},
error(error){
console.log('error:', error)
}
});
});
`
$3
您可以使用new ImageCompressor(file, options)设置压缩器选项。如果要更改全局默认选项,可以使用ImageCompressor.setDefaults(options)。
#### width
- 类型: number
- 默认值: undefined
输出图像的宽度。如果未指定,将使用原始图像的自然宽度,或者如果设置了高度选项,则将根据自然纵横比自动计算宽度。
#### height
- 类型: number
- 默认值: undefined
输出图像的高度。如果未指定,将使用原始图像的自然高度,或者如果设置了宽度选项,则将根据自然纵横比自动计算高度。
#### quality
- 类型: number
- 默认值: 0.8
输出图像的质量。它必须是介于0和1之间的小数。如果此参数是其他值,则默认使用0.80。请小心使用,因为它可能会使输出图像的大小变大。
注意:此选项仅适用于“image/jpeg”图像。
#### mimeType
- 类型: string
- 默认值: 'image/jpeg'
- 选项: "image/jpeg", "image/png", and "image/jpg".
输出图像的文件类型。默认情况下,它将被转换为“image/jpeg”文件类型。
#### maxConversionSize
- 类型: number
- 默认值: undefined
输出图像的最高质量。配置此属性时,设置的“quality”属性将不再有效。
#### orientation
- 类型: boolean
- 默认值: false
是否自动矫正图片。仅支持jpg、jpeg图像类型。此配置同旋转角度rotate属性互斥,同时设置的情况下会优先使用自动矫正
#### sizeThreshold
- 类型: number
- 默认值: undefined
设置压缩阈值,即文件大小大于设置的值时才执行压缩操作,默认单位是KB。可以同strictSizeThreshold组合使用
#### strictSizeThreshold
- 类型: boolean
- 默认值: true
当不满足设置的压缩条件(sizeThreshold)时,是否直接输出原图的处理结果(默认是true)
设置为true时,表示当不处于压缩条件(小于sizeThreshold)时,只会做一个返回结果类型(responseType)的处理;
设置为false时,表示当不处于压缩条件(小于sizeThreshold)时,除了压缩质量quality和最大质量maxConversionSize配置项不生效以外,其他都会生效,同时默认输出的mimeType调整为原始文件类型
#### rotate
- 类型: number
- 默认值: undefined
图片旋转角度输出。此配置同自动转正orientation属性互斥,同时设置的情况下会优先使用自动矫正
#### responseType
- 类型: string
- 默认值: 'file'
- 选项: "file", "blob", "base64", and "arraybuffer"`.