don't recompress animated images, #1585

This commit is contained in:
zadam
2021-01-28 20:17:57 +01:00
parent 48b7108da0
commit 2dc742f5b8
5 changed files with 32 additions and 21 deletions

View File

@@ -11,6 +11,7 @@ const imageType = require('image-type');
const sanitizeFilename = require('sanitize-filename');
const noteRevisionService = require('./note_revisions.js');
const isSvg = require('is-svg');
const isAnimated = require('is-animated');
async function processImage(uploadBuffer, originalName, shrinkImageSwitch) {
const origImageFormat = getImageType(uploadBuffer);
@@ -19,6 +20,10 @@ async function processImage(uploadBuffer, originalName, shrinkImageSwitch) {
// JIMP does not support webp at the moment: https://github.com/oliver-moran/jimp/issues/144
shrinkImageSwitch = false;
}
else if (isAnimated(uploadBuffer)) {
// recompression of animated images will make them static
shrinkImageSwitch = false;
}
const finalImageBuffer = shrinkImageSwitch ? await shrinkImage(uploadBuffer, originalName) : uploadBuffer;