
| ■ | Python Imaging Library(PIL) |
| OS | Python | PIL |
|---|---|---|
| Windows XP Home Edition | 2.2 | 1.1.2 |
●Windows環境でのインストール
Windows向けには、自己解凍形式のインストーラ付きで配布されています。
上記サイトからダウンロードし、エクスプローラなどから起動するとインストーラが起動します。
一次インストール位置は選べないようです(上のバージョンでは C:\py22)。
インストーラが終了したら、次のようにファイルをコピーします。
ここで、Python処理系のインストール位置を C:\Wintools\Python22 とします。
(※1) 付属の文書では、PIL\*.*をsite-packagesの中に直接コピーするようにと書かれていますが、 ファイル数がかなり多いためsite-packagesの中がごちゃごちゃしそうなので、 ここではこのようにしています。
●簡単な画像ビューア
さて、せっかくPILをインストールしてJPEGやPNGなどの画像フォーマットが読めるようになったので、
これらの形式の画像ファイルを表示する簡単な画像ビューアを作ってみました。
from Tkinter import *
import PIL.Image, PIL.ImageTk
import tkFileDialog
class App(Frame):
def quit(self, event): self.master.destroy()
def open(self, event):
filename = tkFileDialog.askopenfilename()
if filename != "":
im = PIL.Image.open(filename)
if im.mode == "1": # bitmap image
self.image1 = PIL.ImageTk.BitmapImage(im, foreground="white")
else: # photo image
self.image1 = PIL.ImageTk.PhotoImage(im)
self.la.config(image=self.image1,
width=self.image1.width(), height=self.image1.height())
def init(self):
self.image1 = PhotoImage()
la = self.la = Label(self, image=self.image1, bg="#000000",
width=100, height=100)
la.bind("<Button-1>", self.open)
la.bind("<Button-3>", self.quit)
la.pack()
def __init__(self, master=None):
Frame.__init__(self, master)
self.master.title('PILシンプル画像ビューア')
self.init(); self.pack()
if __name__ == "__main__":
app = App(); app.mainloop()
|
セクションのサブメニューに戻る
(first uploaded 2002/03/16 last updated (not ever))