通过保护 Django 上的纵横比来调整照片大小

Posted

技术标签:

【中文标题】通过保护 Django 上的纵横比来调整照片大小【英文标题】:Resizing the photo by protecting the aspect ratio on Django 【发布时间】:2020-07-30 09:44:02 【问题描述】:

当我使用ImageField 上传时,如何通过保护图像的纵横比来调整图像大小。

示例:(宽度 x 高度)从 1100x600550x300

而且,[ImageKit] 可以吗? https://github.com/matthewwithanm/django-imagekit

【问题讨论】:

你不需要这个库。 ***.com/a/23936340/10860596 【参考方案1】:

您可以使用 easy-thumbnails 包来优化图像。 只需按照以下步骤操作:

    首先使用命令安装easy-thumbnails包:

    pip install easy-thumbnails
    

    转到 settings.py 文件并将 easy_thumbnails 添加到 INSTALLED_APPS 设置中,如下所示:

    INSTALLED_APPS = [
         # ...
         'easy_thumbnails',
    ]
    

    运行此命令以在数据库中应用更改

    python manage.py migrate
    

    现在转到您的模板并替换该行(如我所料):

    <img src=" image.image.url ">
    

    到以下几行:

    % load thumbnail %
    
    <img src="% thumbnail image.image 550x300 %"
    

【讨论】:

以上是关于通过保护 Django 上的纵横比来调整照片大小的主要内容,如果未能解决你的问题,请参考以下文章

通过指定新的纵横比来拟合图像

通过默认相机调整拍照大小

在发送到服务器之前在 iPhone 中调整照片大小

视图转换后调整 UICollectionView 的大小

在 iPhone 上的 UIImagePicker 中重新调整图像大小

在 iOS 7+ 中将照片大小调整为 5 英寸高 x 4.5 英寸宽