编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

Python玩转PIL库

wxchong 2024-06-10 16:53:15 开源技术 14 ℃ 0 评论

大家好!今天给你们带来了几个简单实用pillow实例。


1.获取图片信息:

from PIL import Image


def get_image_info(image_path):
    img = Image.open(image_path)
    image_info = {
        'format': img.format,
        'size': img.size,
        'mode': img.mode
    }
    return image_info


# 获取
image_path = 'logo_Google_FullColor.jpg'
info = get_image_info(image_path)
print('图像格式:', info['format'])
print('图像分辨率:', info['size'])
print('图像模式:', info['mode'])

输出:

图像格式: JPEG
图像分辨率: (1920, 1080)
图像模式: RGB

2.调整图片大小和分辨率

from PIL import Image

# 打开图像文件
img = Image.open('logo_Google_FullColor.jpg')

# 调整图像大小为指定尺寸
new_size = (800, 600)
resized_img = img.resize(new_size)

# 调整图像分辨率为指定dpi
new_dpi = (300, 300)
resized_img.save('new_img.jpg', dpi=new_dpi)


3.制作透明背景图片

from PIL import Image


#打开图像文件
img = Image.open('b.png')


#将图像转换为RGBA模式
img = img.convert('RGBA')


#获取图像数据
data = img.getdata()


#遍历每个像素并设置白色或黑色为透明
new_data = []
for item in data:
    #如果当前像素为白色或者黑色,则设置为透明
    if item[:3] == (255, 255, 255) or item[:3] == (0, 0, 0):
        new_data.append((255, 255, 255, 0))  # 设置为完全透明
    else:
        new_data.append(item)


#更新图像数据
img.putdata(new_data)


#保存处理后的图像
img.save('output.png')

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表