Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/imagemin/imagemin-webp
WebP plugin for imagemin
https://github.com/imagemin/imagemin-webp
Last synced: 4 days ago
JSON representation
WebP plugin for imagemin
- Host: GitHub
- URL: https://github.com/imagemin/imagemin-webp
- Owner: imagemin
- License: mit
- Created: 2014-09-05T14:09:15.000Z (over 10 years ago)
- Default Branch: main
- Last Pushed: 2023-06-29T19:45:42.000Z (over 1 year ago)
- Last Synced: 2024-12-01T02:02:06.212Z (11 days ago)
- Language: JavaScript
- Homepage:
- Size: 54.7 KB
- Stars: 497
- Watchers: 9
- Forks: 45
- Open Issues: 20
-
Metadata Files:
- Readme: readme.md
- License: license
Awesome Lists containing this project
- awesome-star-libs - imagemin / imagemin-webp
README
# imagemin-webp ![GitHub Actions Status](https://github.com/imagemin/imagemin-webp/workflows/test/badge.svg?branch=main)
> WebP [imagemin](https://github.com/imagemin/imagemin) plugin
## Install
```sh
npm install imagemin-webp
```## Usage
```js
import imagemin from 'imagemin';
import imageminWebp from 'imagemin-webp';await imagemin(['images/*.{jpg,png}'], {
destination: 'build/images',
plugins: [
imageminWebp({quality: 50})
]
});console.log('Images optimized');
```## API
### imageminWebp(options?)(buffer)
Returns a `Promise` with the optimized image.
#### options
Type: `object`
##### preset
Type: `string`\
Default: `default`Preset setting, one of `default`, `photo`, `picture`, `drawing`, `icon` and `text`.
##### quality
Type: `number`\
Default: `75`Set quality factor between `0` and `100`.
##### alphaQuality
Type: `number`\
Default: `100`Set transparency-compression quality between `0` and `100`.
##### method
Type: `number`\
Default: `4`Specify the compression method to use, between `0` (fastest) and `6` (slowest). This parameter controls the trade off between encoding speed and the compressed file size and quality.
##### size
Type: `number`
Set target size in bytes.
##### sns
Type: `number`\
Default: `50`Set the amplitude of spatial noise shaping between `0` and `100`.
##### filter
Type: `number`
Set deblocking filter strength between `0` (off) and `100`.
##### autoFilter
Type: `boolean`\
Default: `false`Adjust filter strength automatically.
##### sharpness
Type: `number`\
Default: `0`Set filter sharpness between `0` (sharpest) and `7` (least sharp).
##### lossless
Type: `boolean | number`\
Default: `false`Encode images losslessly. If set to a number, activates lossless preset with given level between `0` (fastest, larger files) and `9` (slowest, smaller files).
##### nearLossless
Type: `number`\
Default: `100`Encode losslessly with an additional [lossy pre-processing step](https://groups.google.com/a/webmproject.org/forum/#!msg/webp-discuss/0GmxDmlexek/3ggyYsaYdFEJ), with a quality factor between `0` (maximum pre-processing) and `100` (same as `lossless`).
##### crop
Type: `object { x: number, y: number, width: number, height: number }`
Crop the image.
##### resize
Type: `object { width: number, height: number }`
Resize the image. Happens after `crop`.
##### metadata
Type: `string | string[]`\
Default: `none`\
Values: `all` `none` `exif` `icc` `xmp`A list of metadata to copy from the input to the output if present.
#### buffer
Type: `Buffer`
Buffer to optimize.