我从外部获取缓冲区数据到我的程序,并且我想处理缓冲区数据并将其作为缓冲区发送。 所以我不想将缓冲区转换为图像。 我该怎么办?
我尝试这种方式,但是没有用。
const process = await sharp(incoming_buffer_data).grayscale();
fs.writeFileSync('test.jpg', process);
//我正在使用它进行测试。一直以来,我都无法获取图像格式
假设incoming_buffer_data
确实是缓冲区并且具有受支持的图像格式。
您可以将输出作为缓冲区,然后像尝试做的那样将其发送到fs.writeFileSync()
const buffer = await sharp(incoming_buffer_data).grayscale().toBuffer();
fs.writeFileSync('test.jpg', buffer);
或者您可以直接将其写入文件
await sharp(incoming_buffer_data).grayscale().toFile('test.jpg');