一、图片批量转换为jpg格式
代码的作用是找到指定目录下的非 jpg 图像文件,将其转换为 jpg 格式并保存在另一个目录。
其中,PIL 模块是 Python 的一个第三方图像处理库,可以用来读取、修改和保存各种图像格式的文件。在这段代码中,我们使用 Image.open() 函数打开每个待转换的图像文件,然后再调用 Image.save() 函数将其保存为 jpg 格式的文件。
由于不同图像格式之间可能存在像素密度等差异,因此在进行图像格式转换时,有可能会对图像的质量产生一定的影响。如果需要保证图像的质量和清晰度,请谨慎选择转换方案,或者手动调整图像参数。
import os
from PIL import Image
path = "C:/Users/ypzhao/Desktop/pict/"
path_convert = "C:/Users/ypzhao/Desktop/pict_con/"
for i in os.listdir(path):
file_name,file_suffix = i.split(".")
if file_suffix != "jpg":
im = Image.open(path+f"{
i}")
im.save(path_convert+f"{
file_name}"+".jpg")
else:
pass
转换前:
转换后
二、批量调整图片大小
for i in os.listdir(path_convert):
file_name,file_suffix = i.split(".")
if file_suffix == "jpg":
im = Image.open(path_convert+f"{
i}")
width,height = im.size
print(width,height)
new_width,new_height = int(12*37.8),int(7*37.8)
print(new_width,new_height)
new_im = im.resize((new_width,new_height))
print(new_im.size)
new_im.save(path_resize+f"{
file_name}"+".jpg")
三、批量给图片添加水印
# -*- coding: utf-8 -*-
"""
Created on Mon May 22 14:33:39 2023
@author: ypzhao
"""
import os
from PIL import Image, ImageDraw, ImageFont
file_path = "C:/Users/ypzhao/Desktop/pict/"
path= "C:/Users/ypzhao/Desktop/resize/"
for i in os.listdir(path):
file_name,file_suffix = i.split(".")
if file_suffix == "jpg":
im = Image.open(path+f"{
i}")
draw = ImageDraw.Draw(im)
font=ImageFont.truetype(r'C:\Windows\Fonts\simhei.ttf',30)
draw.text((200,180),"项目申报小狂人",font=font,fill="yellow")
draw.text((100,80),"项目申报小狂人",font=font,fill="blue")
im.save(file_path+f"{
file_name}"+".jpg")