Я не могу конвертировать в JPG, используя острый узел - PullRequest
0 голосов
/ 24 сентября 2019

Я использую острый узел (https://www.npmjs.com/package/sharp) в функции лямбда-узла для преобразования, обрезки и создания белых фоновых изображений

Я допускаю различные форматы ввода, но формат вывода изображения должен всегдаbe jpg.

Проблема в том, что в некоторых случаях резкое не преобразует изображение в JPG, когда это всегда происходит с изображениями PNG, это не всегда происходит, другая проблема заключается в том, что резкое невыбросить исключения, т.е. ошибка «молчит».

К сожалению, у меня нет исходного изображения, потому что я не сохраняю эту информацию, ниже приведен код:

Для обрезки:

image.extract(offset)
    .resize(width, height)
    .toFormat('jpeg')
    .jpeg({
      quality: 100,
      chromaSubsampling: '4:4:4'
    })
    .toBuffer();

Поместить белый фон:

image.flatten(true)
    .resize(width, height)
    .background(backgroundColor.white)
    .embed()
    .toFormat('jpeg')
    .jpeg({
      quality: 100,
      chromaSubsampling: '4:4:4'
    })
    .toBuffer();

Другие случаи:

image.flatten(true)
    .resize(width, height)
    .background(backgroundColor.white)
    .toFormat('jpeg')
    .jpeg({
      quality: 100,
      chromaSubsampling: '4:4:4'
    })
    .toBuffer();

Я искал ответы на этот вопрос и до сих пор не могу найти, прошел ли кто-нибудь через это

...