Python Imaging Library (скорочено PIL) — open-source бібліотека мови Python (версія 2), призначена для роботи з растровою графікою.
Можливості бібліотеки:
- підтримка бінарних, напівтонових, індексованих, повнокольорових і CMYK зображень;
- підтримка форматів BMP, EPS, GIF, JPEG, PDF, PNG, PNM, TIFF і деяких інших у режимі читання та запису;
- підтримка форматів (ICO, MPEG, PCX, PSD, WMF та інших) тільки для читання;
- перетворення зображень з одного формату у інший;
- редагування зображень (використання різноматніх фільтрів, масштабування, малювання, матричні операції і т.п.);
- використання бібліотеки з Tkinter та PyQt.
Потребує наявності бібліотек zlib (для PNG), libjpeg, freetype2 (для OpenType/TrueType).
Приклади

Напис на кольоровому тлі можна створити за допомогою методу text об'єкта-зображення. В поданому прикладі напис наноситься на новостворене зображення розміром 100 на 50 пікселів:
from PIL import Image, ImageDraw text = "Hello, PIL!!!" color = (0, 0, 120) img = Image.new('RGB', (100, 50), color) imgDrawer = ImageDraw.Draw(img) imgDrawer.text((10, 20), text) img.save("pil-basic-example.png")
Наступний код завантажує зображення з жорсткого диска і розмиває його:
from PIL import Image, ImageFilter original = Image.open("lena.ppm") # завантажити зображення з жорсткого диску blurred = original.filter(ImageFilter.BLUR) # розмити зображення original.show() # показати обидва зображення blurred.show()
Більше прикладів розміщено у документації