PIL:缩略图并最终得到方形图像
调用
image = Image.open(data)
image.thumbnail((36,36), Image.NEAREST)
将保持宽高比。但我最终需要像这样显示图像:
<img src="/media/image.png" style="height:36px; width:36px" />
我可以使用图像周围透明或白色的信箱样式吗?
Calling
image = Image.open(data)
image.thumbnail((36,36), Image.NEAREST)
will maintain the aspect ratio. But I need to end up displaying the image like this:
<img src="/media/image.png" style="height:36px; width:36px" />
Can I have a letterbox style with either transparent or white around the image?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
PIL 已经有一个函数可以做到这一点:
PIL already has a function to do exactly that:
将图像粘贴到具有正确大小的透明图像作为背景
编辑:修复语法错误
Paste the image into a transparent image with the right size as a background
EDIT: fixed syntax error
更新Cesar Canassa 的答案。
这将创建
image.jpg
的缩略图为image_thumb.jpg
:Update of Cesar Canassa's answer.
This will create a thumbnail of
image.jpg
asimage_thumb.jpg
:或者这个,也许......(原谅意大利面条)
Or this, maybe... (forgive spaghetti)
你可以将 Nadia 的答案包含在这个函数中,这样你就可以控制大小和背景。
you can wrap Nadia's answer in this function, which gives you control over size and background.
为什么不简单地使用调整大小方法?
请参阅本发行说明中有关调整图像大小的建议:
https://pillow.readthedocs.io/en/stable/releasenotes/ 5.3.0.html
Why not simply use the resize method ?
See recommendations for image resizing in this release note:
https://pillow.readthedocs.io/en/stable/releasenotes/5.3.0.html