【发布时间】:2020-01-24 23:50:47
【问题描述】:
我在 lambda 节点函数中使用尖锐节点 (https://www.npmjs.com/package/sharp) 来转换、裁剪和白色背景图像
我容忍各种输入格式,但图像输出格式应始终为 jpg。
问题是在某些情况下sharp不会将图像转换为jpg,发生时总是用png图像,它并不总是发生,另一个问题是sharp不会抛出异常,即错误是“静默”。
很遗憾我没有原图,因为我没有保存这个信息,下面是代码:
对于作物:
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();
我搜索了这个问题的答案,仍然找不到,有人经历过吗?
【问题讨论】: