feat: replace formatQuality with formatOptions in config file
formatQuality is more flexible and allows configuration of more than just quality for all formats. JPEG and WebP still have only their quality configurable. PNG has all the configuration options from the sharp library exposed. Signed-off-by: Nathan Reed <nathreed@gmail.com>
This commit is contained in:
parent
0943a74d91
commit
9bc2e028d4
1 changed files with 13 additions and 4 deletions
|
@ -504,14 +504,23 @@ const respondImage = (
|
|||
image.composite(composites);
|
||||
}
|
||||
|
||||
const formatQuality = (options.formatQuality || {})[format];
|
||||
const formatOptions = (options.formatOptions || {})[format] || {};
|
||||
|
||||
if (format === 'png') {
|
||||
image.png({ adaptiveFiltering: false });
|
||||
image.png({
|
||||
progressive: formatOptions.progressive,
|
||||
compressionLevel: formatOptions.compressionLevel,
|
||||
adaptiveFiltering: formatOptions.adaptiveFiltering,
|
||||
palette: formatOptions.palette,
|
||||
quality: formatOptions.quality,
|
||||
effort: formatOptions.effort,
|
||||
colors: formatOptions.colors,
|
||||
dither: formatOptions.dither,
|
||||
});
|
||||
} else if (format === 'jpeg') {
|
||||
image.jpeg({ quality: formatQuality || 80 });
|
||||
image.jpeg({ quality: formatOptions.quality || 80 });
|
||||
} else if (format === 'webp') {
|
||||
image.webp({ quality: formatQuality || 90 });
|
||||
image.webp({ quality: formatOptions.quality || 90 });
|
||||
}
|
||||
image.toBuffer((err, buffer, info) => {
|
||||
if (!buffer) {
|
||||
|
|
Loading…
Reference in a new issue