将图像原始大小调整为指定大小。
项目描述
将图像原始大小调整为指定大小。兼容sorl-thumbnail。
特性
在Django 2.2, 3.0, 3.1, 3.2, 4.0上测试过
Python 3支持
安装
pip install django-resized
配置(可选)
settings.py
DJANGORESIZED_DEFAULT_SIZE = [1920, 1080]
DJANGORESIZED_DEFAULT_SCALE = 0.5
DJANGORESIZED_DEFAULT_QUALITY = 75
DJANGORESIZED_DEFAULT_KEEP_META = True
DJANGORESIZED_DEFAULT_FORCE_FORMAT = 'JPEG'
DJANGORESIZED_DEFAULT_FORMAT_EXTENSIONS = {'JPEG': ".jpg"}
DJANGORESIZED_DEFAULT_NORMALIZE_ROTATION = True
用法
models.py
from django_resized import ResizedImageField
class MyModel(models.Model):
...
image1 = ResizedImageField(size=[500, 300], upload_to='whatever')
image2 = ResizedImageField(size=[100, 100], crop=['top', 'left'], upload_to='whatever')
image3 = ResizedImageField(size=[100, 150], crop=['middle', 'center'], upload_to='whatever')
image4 = ResizedImageField(scale=0.5, quality=75, upload_to='whatever')
image5 = ResizedImageField(size=None, upload_to='whatever', force_format='PNG')
image6 = ResizedImageField(size=[100, None], upload_to='whatever')
选项
size - 最大宽度和高度,例如 [640, 480]。如果某个维度为None,则使用另一个值调整大小并保持图像比例。如果size为None,则保留图像的原始大小。
scale - 一个浮点数,如果不为None,则在调整图像大小后重新缩放图像。
crop - 调整大小和裁剪。[‘top’,‘left’] - 左上角,[‘middle’,‘center’] 为中心裁剪,[‘bottom’,‘right’] - 裁剪右下角。
quality - 调整后图像的质量 0..100,-1 表示默认值
keep_meta - 保持EXIF和其他元数据,默认为True
force_format - 强制调整后图像的格式,支持的格式由 pillow 支持,默认为None
如何运行测试
pip install tox
tox
项目详情
关闭
django-resized-1.0.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 52d727860f64ef4fdadbe2e74b66231c71c59df4d95949e338fcd320450f77fa |
|
MD5 | ebbfe479d0dddeae158a51ba5baa21e1 |
|
BLAKE2b-256 | 304b06699ab3dbe204602e86d3af8ee42835290de80ea0633781a6e6dc1a31b6 |
关闭
django_resized-1.0.2-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d55a8d4125838486a1e76ffb689f8364f7d579bc7562b04400065602ec2ba7cc |
|
MD5 | 3e7d51036bf23b958cf96da399f9f085 |
|
BLAKE2b-256 | 05efa3ad9941f14a13a5dc9f2bdc8992bf21cc09c462c718711a0281acfab67c |