javascript - 从多个设备上传裁剪的图像,同时保持更大的图像尺寸
问题描述
我的目标是允许用户上传个人资料图像,并在上传之前裁剪图像,以便很好地适合图像容器。这是一个非常普遍的问题。
我遇到的问题是,当用户使用移动设备时,裁剪和上传的图像最终大约为 350 像素宽,这导致在大屏幕上查看时会产生高度像素化的图像,最终会根据需要拉伸图像(超过 700 像素)。
流程如下:用户在本地选择新图片上传;然后将此图像植入浏览器以进行裁剪;生成的裁剪图像(base64)具有正确的纵横比,但像素大小(宽度和高度)与设备的屏幕宽度一致,根据设备的不同,可能非常小。
我正在使用 Croppie.js 进行裁剪,效果很好。但是,在小型设备(手机等)上裁剪时,浏览器中生成的 base64 图像的像素非常小。最终上传的是 base64 图像,因此这会导致上面提到的问题,即在更大的设备上进行拉伸和像素化。
任何我忽略的输入或其他技术将不胜感激。
解决方案
根据https://foliotek.github.io/Croppie/:
当您要求结果时,使用 size = original 应该可以为您提供更高质量的图像,您可以在显示时缩放到您需要的大小。
推荐阅读
- reactjs - React + redux 应用程序部署在 heroku 上,但后端/api 不工作
- amazon-web-services - 将 aws ELB 用于另一个托管实例
- flutter - 使用 Dart 包中提供的扩展
- sockets - Zerocopy TCP 消息从内核模块发送错误 EFAULT
- php - 如何在 Chrome 中修复“此 Set-Cookie 由于用户偏好而被阻止”?(Stackoverflow SSO 登录/Ajax CORS 请求)
- cognos - 如何在 Cognos 命名空间中为新用户设置访问权限?
- php - codeigniter:将数据/记录插入到 2 个具有相同 ID 的表中
- python - 如何根据计算检查范围内的所有数字?
- mongodb - Azure cosmos 在 MongoDB 查询管道中为 $round 抛出错误
- graph - msal acquireTokenSilent 失败,静默身份验证被拒绝