使用Pillow动态缩放、裁剪、转换并从S3或本地文件系统提供图像的Python网络服务器
项目描述
认识Thumpy
Thumpy是一个Python网络服务,用于裁剪和缩放图像。它不存储任何东西。它旨在用作位于CDN(如Amazon CloudFront)之后的源服务器。
配置
设置存储在settings.yaml文件中。它们应包括:- 您的S3存储桶的名称和访问密钥 - 压缩质量(例如80) - 允许的CORS主机列表
接口
Thumpy使用与S3上存储位置的相同路径提供服务图像。转换参数在查询字符串中指定,使用受TimThumb启发的接口。
示例
缩放
将宽度缩放为200px,并按比例缩放高度
http://mythumpyserver.somewhere/castle.jpg?w=200
将高度缩放为150px,并按比例缩放宽度
http://mythumpyserver.somewhere/castle.jpg?w=200
指定高度和宽度
http://mythumpyserver.somewhere/castle.jpg?w=200&h=150
缩放(后处理)
与上述缩放相同,但应用于所有转换后的输出图像
裁剪
将宽度裁剪为200,将高度裁剪为100
http://mythumpyserver.somewhere/castle.jpg?cw=200&ch=100
将宽度和高度裁剪为50
http://mythumpyserver.somewhere/castle.jpg?cw=50&ch=50
Thumpy始终在裁剪之前先进行缩放。
Thumpy始终从图像中心裁剪。
显示遮罩/缩放裁剪
需要至少3个参数:- 顶部偏移量(例如zct=100px) - 左侧偏移量(例如zcl=100px) - 从偏移量输出的输出裁剪的宽度和高度。如果只提供一个,另一个将自动分配其他值。
遮罩应应用于原始图像,这意味着没有缩放,只有遮罩。
请参阅:缩放(后处理)以获取缩放遮罩/裁剪。
从大图像中裁剪出100px x 50px的缩放区域,应用350px x 175px的揭示遮罩,左上角偏移量为20px x 10px。
http://mythumpyserver.somewhere/castle.jpg?zcw=350&zch=175&zct=20&zcl=10&pw=100&ph=50
灰度图
项目详情
关闭
thumpy-0.4.3.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3853e6ea9e876e36e1979443c181a78f221c22aef4ed039d8f906239bd717f85 |
|
MD5 | a9f3d6d6cf029b462c8d1227e78e2977 |
|
BLAKE2b-256 | 53ce85f75f462c850e78a2de334edc6ad15515e3bd7a9b5071480bf9a73b8768 |