代码之家  ›  专栏  ›  技术社区  ›  chuckd

我可以在不将图像上载到cloudinary的情况下转换图像吗?

  •  1
  • chuckd  · 技术社区  · 5 年前

    目前,在将图像保存到cloudinary之前,我正在服务器上对图像使用不同的转换

    using (var stream = file.OpenReadStream())
    {
       var uploadParams = new ImageUploadParams()
        {
              File = new FileDescription(file.Name, stream),
              Transformation = new Transformation()
                 .Width(500).Height(500).Crop("fill").Gravity("face")
        };
                    
        uploadResult = _cloudinary.Upload(uploadParams);
    }
    

    通过这种方式,我可以向用户显示它,用户可以在将它保存到我的Cloudinary帐户和服务器之前接受或拒绝它。

    • 具体地说,我正在寻找一个Cloudinary解决方案,而不是第三方JS库,除非它具有重力(“face”)和较小的尺寸

    谢谢你的帮助

    0 回复  |  直到 5 年前
        1
  •  1
  •   Fennec    5 年前

    对于裁剪/调整大小的零件,您无需库即可完成,所需的只是一个画布,此链接可能会帮助您 How to resize then crop an image with canvas

    Gravity("face") 部分,这是另一个层次的工程,你需要一个人工智能来检测和定位照片中的所有人脸,你必须使用一个库和 face-api.js 是javascript的最佳解决方案,它唯一的缺点是它的大小“我们在谈论兆字节”,这里是 demo

    pico.js ,这是 demo

    不管怎样,祝你好运。