Python Image Library – Image

Python Image Library (PIL) é uma biblioteca que permite criar, modificar e converter arquivos de imagens numa gama de formatos usando Python. No site é possível baixar a biblioteca para as principais plataformas e versões de Python – ainda não está disponível para o 3.x da linguagem. Quem utiliza o Linux pode baixar através do Synaptic com o seguinte comando

#apt-get install python-imaging

Manusear imagens com módulo Image da biblioteca PIL é bem simples

>>> from PIL import Image
>>> imagem = Image.open("linux-potato.jpg")
>>> imagem.size,imagem.mode,imagem.format
((320, 272), 'RGB', 'JPEG')

Abrimos uma imagem e através dos atributos size, mode, format descobrimos algumas informações sobre ela.

>>> from PIL import Image
>>> imagem = Image.open("linux-potato.jpg")
>>> imagem.save("potato.bmp")

Esse trecho de código salva a imagem no formato Bitmap. Além do formato Bitmap a PIL oferece uma série de formatos que podem ser utilizados com o método save, faça o seguinte para ver os formatos

>>> from PIL import Image
>>> Image.init()
>>> Image.SAVE.keys()
['PCX', 'HDF5', 'TIFF', 'BUFR', 'IM', 'GRIB', 'PPM', 'SPIDER', 'XBM', 'GIF','BMP', 'PALM', 'JPEG', 'FITS', 'PDF', 'MSP', 'EPS', 'WMF', 'PNG']
>>> from PIL import Image
>>> imagem = Image.open("linux-potato.jpg")
>>> imagem.thumbnail((128,128))  # Tamanho 128x128
>>> imagem=imagem.rotate(180)
>>> image.save("potato-thumbnail.jpg")

Com o método thumbnail é possível criar miniaturas, e o rotate , rotacionar imagens. Com isso acabo, minha breve explicação sobre o módulo Image da biblioteca PIL, mas deixo dois links interessantes , o Brincando com Python + PIL e  o link para secção de imagens do cookbook da Python Brasil, onde pode ser encontrado alguns scripts interessantes que utilizam PIL.

| http://nadiana.com/pil-tutorial-basic-advanced-drawing

Rodrigo Lira



Warning: Missing argument 1 for cwppos_show_review(), called in /home/rodrigolira/blog.rodrigolira.net/wp-content/themes/flat/content-single.php on line 29 and defined in /home/rodrigolira/blog.rodrigolira.net/wp-content/plugins/wp-product-review/includes/legacy.php on line 18