Cloudinary API 转换问题

Cloudinary API transformation issues

我正在使用 Cloudinary 作为我的应用程序的图像存储,但我在转换图像时遇到问题。

我想实现的是:

我目前的积分是:

const transformation = {
  width: 1920, max_height: 1920, format: 'jpg', quality: 80
};

但不幸的是,这个输出是一个方形图像...

我正在尝试使用 if 但我不明白应该如何使用...看起来写文档总是最难做的事情...

我希望你能帮助我找到正确的方法。我正在使用 SDK,所以很简单 javascript.

创建转换时,SDK 中没有 max_height 参数,但您可以通过将 widthheight 都设置为最大值来实现您想要的您要允许的值。

如果您得到方形输出,那是因为默认的 crop/resize modescale,它会生成与请求的尺寸完全一致的输出,但可能会导致图像 [=27] =] 或 'stretched'.

我认为您在这里寻找的是这样的东西:

const transformation = {
  width: 1920, height: 1920, format: 'jpg', quality: 'auto', crop: 'limit'
};

这给你一个 URL 这样的: https://res.cloudinary.com/demo/image/upload/w_1920,h_1920,f_jpg,q_auto,c_limit/bike.jpg

'limit' 裁剪模式会将图像缩小(而不是放大)直到小于 1920x1920,并保持原始纵横比