PIL学习笔记(一)

PIL

在图像处理方面,python有一个公认的图片处理库——PIL。

API参考地址

安装

sudo pip install pillow

第一行代码

# pil first code

from PIL import Image

# Open file
im = Image.open('test.jpg')
# get image scale
w, h = im.size
print('Original image size: %sx%s' % (w, h))
# scale to 50%
im.thumbnail((w//2, h//2))
print('Resize image to: %sx%s' % (w//2, h//2))
# save image
im.save('thumbnail.jpg', 'jpeg')

非常简单的将图片缩小50%并再次保存的方法。

在上面的代码基础上,我们添加一些旋转。

# rotate image
img = im.rotate(45)
# save image
img.save('rotate.jpg' , 'jpeg')
# show image
img.show();

image.png

现在,我们掌握了PIL的基本用法,可以看到它是非常方便的。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏游戏杂谈

onbeforeunload事件被a链接触发的问题

onbeforeunload本身并非W3C DOM-Event标准事件,只不过在很多时候国内的流氓做法就是离开页面,直接弹出收藏本网页的提示(虽然我很讨厌这种...

1032
来自专栏王磊的博客

ReactNative常用组件汇总

导航组件 react-navigation: https://github.com/react-community/react-navigation 网络请求 ...

1825
来自专栏菩提树下的杨过

[silverlight基础]仿文字连接跑马灯效果-高手绕道

运行效果如下: ? 分析示意图: ? 代码:  <Canvas x:Name="a" Background="AliceBlue" MouseEnter="a_...

18010
来自专栏逸鹏说道

【兼容写法】HttpServerUtility.Execute 在等待异步操作完成时被阻止。关键词:MVC,分布视图,异步

异常处理汇总-后端系列 http://www.cnblogs.com/dunitian/p/4523006.html MVC6之前的版本,对分部视图的异步支持不...

3486
来自专栏非著名程序员

Android 自定义标签 ViewLayout

自定义viewLayout实现标签View,UI的效果图如下: ? 如图,我们要自己实现带描边的,带花括号的,带三角形,带对勾的这样一个layout ,并且对...

19910
来自专栏Small Code

《Python基础教程》第二版代码清单2-3更正

今天在看《Python基础教程》第二版的时候看到代码清单2-3,自己试了试结果不对(输入的时候就感觉不太对,结果真的不对),于是自己修改了一下,主要是盒子里的空...

17410
来自专栏姬小光

小鸡君の前端小姜汤【第014期】- 内联样式

在第003期我们讲过一点所谓样式,当时举的栗子是行内样式,只能写在元素的标签上,作为 style 属性的值存在的。这一期我们学习内联样式,或叫嵌入样式。

653
来自专栏偏前端工程师的驿站

JS魔法堂:关于元素位置和鼠标位置的属性

一、关于鼠标位置的属性                           1. 触发鼠标事件的区域       盒子模型中的border,padding,co...

18410
来自专栏JackeyGao的博客

使用Vue.js 和 semantic-ui 的一个简单TODO List

这是一个完全仿照官网案例的项目, 主要为了熟悉vue.js的基本用法, 不得不说这个案例能吸收到基本的vue.js 操作.

792
来自专栏糊一笑

移动端效果之CellSwiper

写在前面 接着之前的移动端效果讲解,刚好项目中需要使用到这一效果,去饿了么的组件库看了一下效果,发现效果和微信端的cellSwiper还是有点差别的,由于项目中...

1886

扫码关注云+社区