PILにかえてPillowをいれた

昨日 PIL をインストールしたけど、「python pil 使い方」でぐぐったらこんなページが最初に来た。

 cf. PIL 利用ノート [obsolete]

曰く、

Warning

PIL は随分長い間、Python のバージョンで言うと 2.7 くらいまでだろうか、 画像処理パッケージとして愛用してきたが、現在は Pillow というものに取って代わられたようである。 そこで、筆者の環境も PIL を放棄して Pillow を導入した。

だそうである。なんてこった…orz。

使ってる Python が 2.7.6 なのでこのままでもいいのかもしれないけど、せっかくなので Pillow に移行することにした。
Pillow のインストールは↓ここに詳しい。

 cf. Installation – Pillow (PIL Fork)

このページの Linux Installation の項に Ubuntu 14.04 LTS でのインストールの仕方も載っている。まずは依存ライブラリのインストール。

takatoh@nightschool $ sudo apt-get install libtiff5-dev libjpeg8-dev zlib1g-dev  libfreetype6-dev liblcms2-dev libwebp-dev tcl8.6-dev tk8.6-dev python-tk

つづいて Pillow を pip でインストール。

takatoh@nightschool $ sudo pip install pillow

試してみよう。

takatoh@nightschool $ python
Python 2.7.6 (default, Mar 22 2014, 22:59:56) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from PIL import Image
>>> img = Image.open("sample.jpg")
>>> img.info
{'jfif_version': (1, 1), 'jfif': 257, 'jfif_unit': 1, 'jfif_density': (72, 72), 'dpi': (72, 72)}
>>> img.size
(1280, 720)

フォーマットを変換するには、単に拡張子をかえて保存すればいい。

>>> img.save("sample.png")

縦横比を保ってサムネールを作るには thumbnail メソッドが使える。ただし、オブジェクト自身を変更するので注意。と言ってもいきなり上書きされるわけでもない。保存するには上にも書いた save メソッドを使う。

>>> img.thumbnail((360, 360))
>>> img.size
(360, 202)
>>> img.save("thumbnail.jpg")

とりあえずはこんなところか。うまくいってよかった。