2013/01/14

[Google App Engine][Python]画像のリサイズ

Images Python API の概要を読みながら画像のリサイズ方法について調査する。

下のようなコードでいけそうです。

from google.appengine.api import images
#-------------------------
#省略
#-------------------------

#image_real_dataは、db.BlobProperty()から読み出したバイナリーデータ
img = images.Image(image_real_data)
img.resize(width=100, height=100)
img = img.execute_transforms(output_encoding=images.JPEG)
self.response.headers['Content-Type'] = 'image/jpeg'
self.response.out.write(img)
注意したいのは、execute_transformsメソッドを実行すること。

デフォルトでは、リサイズ後の画像形式がPNGになってしまうので、images.JPEGにしてjpegで吐き出すということ。

後、execute_transformsを読むと、第二引数にqualityがあって、ここで品質を設定することができます。

デフォルトは、85

こうしてまとめておけば、リサイズ処理も困らないぞと。

0 コメント:

コメントを投稿