Python Imaging Library
| Python Imaging Library | |
|---|---|
| Original author | Fredrik Lundh |
| Developer | Secret Labs AB |
| Initial release | 1995[1] |
| Stable release | 1.1.7
/ November 15, 2009[3] |
| Preview release | 1.2a0[2]
/ 2011 |
| Written in | Python, C |
| Type | Library for image processing |
| License | Historical Permission Notice and Disclaimer[1] |
| Website | python-pillow |
| Pillow | |
|---|---|
| Original author | Jeffrey A. Clark (Alex) |
| Initial release | 31 July 2010[1] |
| Stable release | 11.1.0
/ January 2, 2025[4] |
| Written in | Python, C |
| Type | Library for image processing |
| License | Historical Permission Notice and Disclaimer[1] |
| Website | python-pillow |
Python Imaging Library is a free and open-source additional library for the Python programming language that adds support for opening, manipulating, and saving many different image file formats. It is available for Windows, macOS and Linux. The latest version of PIL is 1.1.7, was released in September 2009 and supports Python 1.5.2–2.7.[3]
Development of the original project, known as PIL, was discontinued in 2011.[2] Subsequently, a successor project named Pillow forked the PIL repository and added Python 3.x support.[5] This fork has been adopted as a replacement for the original PIL in Linux distributions including Debian[6] and Ubuntu (since 13.04).[7]
Capabilities
PIL offers several standard procedures for image manipulation. These include:
- per-pixel manipulations,[8]
- masking and transparency handling,
- image filtering, such as blurring, contouring, smoothing, or edge finding,[9]
- image enhancing, such as sharpening, adjusting brightness, contrast or color,[10]
- adding text
File formats
Supported file formats include PPM, PNG, JPEG, GIF, TIFF, and BMP. PIL is extensible, allowing users to create custom decoders for any file format.[11]
Programming examples
import os
from PIL import Image
def convert_jpegs_to_pngs(folder_path):
# Checks if the provided path is a folder
if not os.path.isdir(folder_path):
print(f"Error: {folder_path} is not a valid folder.")
return
# Iterates over all files in the folder
for filename in os.listdir(folder_path):
# Checks if the file has a .jpg or .jpeg extension
if filename.lower().endswith(".jpg") or filename.lower().endswith(".jpeg"):
# Full path of the file
jpeg_path = os.path.join(folder_path, filename)
# Path for the converted file
png_path = os.path.join(folder_path, os.path.splitext(filename)[0] + ".png")
try:
# Opens the JPEG image
with Image.open(jpeg_path) as img:
# Converts and saves as PNG
img.save(png_path, "PNG")
print(f"Converted {jpeg_path} to {png_path}")
except Exception as e:
print(f"Error converting {jpeg_path}: {e}")
References
- ^ a b c d "Software License". Secret Labs AB. Archived from the original on 20 July 2020. Retrieved December 8, 2013.
- ^ a b "effbot / pil-2009-raclette". Archived from the original on 15 March 2015. Retrieved December 8, 2013.
- ^ a b "Python Imaging Library". Secret Labs AB. Archived from the original on 21 November 2020. Retrieved December 8, 2013.
- ^ "Release Notes". Pillow (PIL Fork) Documentation. Retrieved February 5, 2025.
- ^ "Pillow: a modern fork of PIL". Retrieved December 8, 2013.
- ^ "Details of package python-imaging in sid". packages.debian.org. Software in the Public Interest. Retrieved December 8, 2013.
- ^ "Details of package python-imaging in raring". ubuntu.com. Canonical Ltd. Retrieved December 8, 2013.
- ^ "PyAccess Module". readthedocs.io. Retrieved September 20, 2024.
- ^ "ImageFilter Module". readthedocs.io. Retrieved September 20, 2024.
- ^ "ImageColor Module". readthedocs.io. Retrieved September 20, 2024.
- ^ "D. Writing Your Own File Decoder". Effbot.org. Retrieved 2014-01-28.
External links
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.