Je souhaite redimensionner et compresser des images à l'aide de sharp
dans node.js
En forte pour jpeg
il y a une compression séparée et pour webp
il y a séparée et pour png
il y a séparée.
WEBP
sharp('a.jpg')
.resize(1000)
.webp({quality: 80})
JPEG
sharp('_4_.jpg')
.resize(1000)
.jpeg({quality: 80})
PNG
sharp('_4_.jpg')
.resize(1000)
.png({compressionLevel: 8})
Fondamentalement, je veux compresser et redimensionner l'image sans vérifier dans quel format ils.
Y a-t-il quelque chose pour cela dans sharp
?
Si vous voulez que le format de sortie corresponde au format d'entrée, vous devriez regarder l'option force
.
sharp(input)
.jpeg({ progressive: true, force: false })
.png({ progressive: true, force: false })
...
La sortie GIF n'est pas prise en charge, donc l'entrée GIF deviendra la sortie PNG par défaut.
Référence supplémentaire: https://sharp.readthedocs.io/en/v0.17.0/api-output/#jpeg