首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用node.js和Sharp包将非裁剪大小调整为png

使用node.js和Sharp包将非裁剪大小调整为png
EN

Stack Overflow用户
提问于 2017-12-14 05:42:12
回答 2查看 1K关注 0票数 3

我正在尝试使用Nodejs sharp包调整图像大小/转换为png,而不进行裁剪。根据文档,它是.max()方法,遗憾的是,当调整大小为png时,该方法不起作用(图像被裁剪)。有什么解决方法吗?

EN

回答 2

Stack Overflow用户

发布于 2020-02-05 03:30:54

嘿,如果你还在疑惑,这就是你怎么做的。

代码语言:javascript
复制
await sharp(postImage).resize(800, 900, {fit:"contain"}).toFile("/output/path");

在.resize()的第三个参数中,你可以提到fit,它可以是'fill','contain‘等. 'contain’将嵌入图像而不改变其原始的高度和宽度,并用背景颜色填充(def.黑色)。“‘fill”将拉伸图像。For More

票数 1
EN

Stack Overflow用户

发布于 2021-07-21 20:41:02

如果您使用的是sharp,那么您可以使用

代码语言:javascript
复制
sharp()
  .resize(400, 400, {
    fit: sharp.fit.inside,
    withoutEnlargement: true, // if image's original width or height is less than specified width and height, sharp will do nothing(i.e no enlargement)
  })

  • inside:将在不裁剪图像任何部分的情况下适应图像的宽度400 和高度400 ,并且不向输出image
  • Technically添加用于调整亮度的黑色填充,它会将图像大小调整为尽可能大,同时确保其尺寸小于或等于这两个指定尺寸。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47802542

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档