借助python程序修改图片DPI

前言

       哈喽哈喽友友们,本期小北为大家分享一个图片处理的小技巧——当遇到系统要求修改照片DPI的300,如何解决这个问题呢?

什么是DPI

       DPI的全称是Dots Per Inch,就是每英寸点数,最早指的是指每一英寸长度可以打印的点的数目, DPI值越高,表明打印机的打印精度越高。后来也可以指图片的清晰程度,一般来说,冲洗或打印图片,必须是300dpi或者更高350dpi。

以下有两种方法来解决这个问题:

一、借助已有平台(但是有试用次数限制)

1.登录改图宝平台:

改图宝 - 在线修改照片大小尺寸工具 (gaitubao.com)icon-default.png?t=N7T8https://www.gaitubao.com/在导航菜单中找到【修改分辨率】菜单。

2.上传素材图片,选择合适的dpi,点击【开始上传并修改】,稍等片刻就修改照片dpi完毕了。
3.处理完毕,下载到本地

图片

分析平台每天只能允许免费使用5次,如果图片数量较多就可以考虑用以下方法解决。

二、借助python程序

1.python中提前安装Image库。
pip install Image
2.新建两个文件夹,一个“待处理”文件夹用来存放修改前的图片,另一个"已处理"文件夹用来存放修改后的图片。
3.运行以下代码:(统一宽高
from PIL import Image
from pathlib import Path
if __name__ == '__main__':
    width = 480  # 统一的宽
    height = 640  # 统一的高
    src_folder = Path('C:\\Fig')  # 设置源文件目录
    des_folder = Path('C:\\Fig DPI Python')  # 设置处理后的目录
    if not des_folder.exists():
        des_folder.mkdir(parents=True)
    file_list = list(src_folder.glob('*.jpg')) # '*.jpg' 表示任何以jpg结尾的图片
    for i in file_list:
        des_file = des_folder / i.name
        des_file = des_file.with_suffix('.jpg') # '.jpg' 表示图片的目标格式
        im = Image.open(i)
        im = im.resize((width, height), Image.BILINEAR)
        im = im.save(des_file, quality=100, dpi=(300.0, 300.0))#修改目标dpi:300
        print(f'{i.name}转换格式完成')
默认
from PIL import Image  
from pathlib import Path  
  
if __name__ == '__main__':  
    src_folder = Path(r'C:\Fig')  # 设置源文件目录,使用原始字符串  
    des_folder = Path(r'C:\Fig DPI Python')  # 设置处理后的目录,使用原始字符串  
    if not des_folder.exists():  
        des_folder.mkdir(parents=True)  
      
    # 遍历源文件夹中的所有jpg图片  
    for image_path in src_folder.glob('*.jpg'):  
        # 构建目标文件路径,保持相同的文件名  
        des_file = des_folder / image_path.name  
          
        # 打开图片并直接保存到目标路径  
        with Image.open(image_path) as im:  
            im.save(des_file, quality=100)  # 保存图片,保持原始质量  
          
        print(f'{image_path.name} 已复制到目标文件夹')
3.大功告成。

图片

分析此方法适合图片比较多的情况,处理速度很快,前提是需要有python基础。

  • 25
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Stitch .

欢迎各位家人来白嫖

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值