如何在上传到cloudinary之前调整图像大小?

问题描述 投票:0回答:3

这是我第一次在这里发帖提问。我正在构建一个具有图像上传功能的流星应用程序。我找到了流星的 cloudinary 包https://github.com/Lepozepo/cloudinary并且它工作得很好。我遇到的唯一也是最大的问题是调整图像大小。默认情况下,这个包会上传从手机拍摄的原始图像,通常为 3 或 4 MB,大小约为 2000x4000,但我只希望图像为几 KB。由于这个问题,应用程序需要大量的存储和带宽。我应该怎么做才能解决这个问题?非常感谢。

image meteor cloudinary
3个回答
8
投票

我不确定是否有人需要这个,但过去两天我一直在努力解决这个问题,但找不到解决方案。最后我去了 cloudinary 仪表板,这是有史以来最简单的事情。登录您的云端。转到设置 -> 上传 -> 上传预设:编辑(在您的项目上) -> 上传操作 -> 传入转换:编辑 -> 根据需要更改传入图像:D。

我上传了一张大小为 2mb 的图像,在应用传入转换后,大小降至 30kb。

希望这对某人有帮助:)


2
投票

如果您正在执行客户端上传(通过 Cloudinary 的 jQuery 集成库),您可以在上传之前执行客户端调整大小: https://github.com/cloudinary/cloudinary_js#client-side-image-resizing-before-upload

如果您正在执行服务器端上传,则可以应用“传入转换”来转换图像(调整大小),然后再将其存储到您的 Cloudinary 帐户中。 传入转换也可以在上传预设中设置:

http://cloudinary.com/blog/centralized_control_for_image_upload_image_size_format_thumbnail_ Generation_tagging_and_more


0
投票

质量:您可以使用质量参数指定所需的图像质量。该值应为 0 到 100 之间的数字,其中 0 表示最低质量(最高压缩),100 表示最高质量(最低压缩)。例如,设置质量:80 会将图像质量降低到 80%。
  1. Format:您可以使用format参数指定所需的图像格式。 Cloudinary 支持多种图像格式,例如 JPEG、PNG 和 WebP。默认情况下,Cloudinary 会根据上传的图像自动确定格式,但您可以根据需要显式指定格式。
  2. 尺寸:您可以使用宽度和高度参数指定图像的所需尺寸(宽度和高度)。将图像调整为更小的尺寸也有助于减小文件大小。
  3. const cloudinary = require('cloudinary').v2; //Configure Cloudinary with your credentials cloudinary.config({ cloud_name: 'your_cloud_name', api_key: 'your_api_key', api_secret: 'your_api_secret' }); // Upload the image with compression and resizing cloudinary.uploader.upload('path_to_your_image.jpg', { folder: 'your_folder', // Optional: Specify the folder in Cloudinary quality: 80, // Reduce image quality to 80% format: 'jpg', // Convert the image to JPEG format width: 800, // Resize the image width to 800 pixels height: 600 // Resize the image height to 600 pixels }, function(error, result) { if (error) { console.error(error); } else { console.log(result); } });
我们使用cloudinary.uploader.upload()将图像上传到Cloudinary。
我们指定质量、格式、宽度和高度参数,以根据我们的要求压缩和调整图像大小。
回调函数接收错误或上传结果,您可以进行相应处理。

© www.soinside.com 2019 - 2024. All rights reserved.