Sharp.js: вывод на изменения WebP без потерь Полностью прозрачный цвет пикселейJavascript

Форум по Javascript
Anonymous
Sharp.js: вывод на изменения WebP без потерь Полностью прозрачный цвет пикселей

Сообщение Anonymous »

Я пишу сценарий, который считывает файлы изображений, манипулирует (сбрасывает цвет полностью прозрачных пикселей в чистое черное, разбусывает изображения) и записывает экспорт выходных изображений в Webp, без потерь, . Я использую библиотеку Sharp.js . console.log (imgbuffer); < /code> дает:

Код: Выделить всё

console.log(imgBuffer.slice(imgBuffer.length - 50, imgBuffer.length));< /code> дает последние байты:


Вот код, который записывает буфер в файл изображения:

Код: Выделить всё

sharp(imgBuffer, {
raw: {
height: bin.height,
width: bin.width,
channels: 4
}})
.webp({ lossless: true, quality: 100, alphaQuality: 100, force: true })
.toFile('output.webp');
< /code>
Однако выходной изображение содержит «искаженные» цвета для некоторых полностью прозрачных пикселей. < /p>
Вот пример входного файла. Как видно, полностью прозрачные пиксели имеют чистый черный цвет (здесь я использую gimp 
для манипулирования альфа каналом).

webp. Как видно, полностью прозрачные пиксели имеют отличные цвета, чем во входном файле.

Воспитание: roup.js , как предотвратить трансформацию>

Подробнее здесь: https://stackoverflow.com/questions/795 ... ixel-color

Вернуться в «Javascript»