Python實現(xiàn)圖片尺寸縮放腳本
最近由于網(wǎng)站對圖片尺寸的需要,用python寫了個小腳本,方便進行圖片尺寸的一些調(diào)整,特記錄如下:
# coding=utf-8 import Image import shutil import os class Graphics: infile = 'D:\\myimg.jpg' outfile = 'D:\\adjust_img.jpg' @classmethod def fixed_size(cls, width, height): """按照固定尺寸處理圖片""" im = Image.open(cls.infile) out = im.resize((width, height),Image.ANTIALIAS) out.save(cls.outfile) @classmethod def resize_by_width(cls, w_divide_h): """按照寬度進行所需比例縮放""" im = Image.open(cls.infile) (x, y) = im.size x_s = x y_s = x/w_divide_h out = im.resize((x_s, y_s), Image.ANTIALIAS) out.save(cls.outfile) @classmethod def resize_by_height(cls, w_divide_h): """按照高度進行所需比例縮放""" im = Image.open(cls.infile) (x, y) = im.size x_s = y*w_divide_h y_s = y out = im.resize((x_s, y_s), Image.ANTIALIAS) out.save(cls.outfile) @classmethod def resize_by_size(cls, size): """按照生成圖片文件大小進行處理(單位KB)""" size *= 1024 im = Image.open(cls.infile) size_tmp = os.path.getsize(cls.infile) q = 100 while size_tmp > size and q > 0: print q out = im.resize(im.size, Image.ANTIALIAS) out.save(cls.outfile, quality=q) size_tmp = os.path.getsize(cls.outfile) q -= 5 if q == 100: shutil.copy(cls.infile, cls.outfile) @classmethod def cut_by_ratio(cls, width, height): """按照圖片長寬比進行分割""" im = Image.open(cls.infile) width = float(width) height = float(height) (x, y) = im.size if width > height: region = (0, int((y-(y * (height / width)))/2), x, int((y+(y * (height / width)))/2)) elif width < height: region = (int((x-(x * (width / height)))/2), 0, int((x+(x * (width / height)))/2), y) else: region = (0, 0, x, y) #裁切圖片 crop_img = im.crop(region) #保存裁切后的圖片 crop_img.save(cls.outfile)
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python圖形開發(fā)GUI庫pyqt5的詳細使用方法及各控件的屬性與方法
這篇文章主要介紹了python圖形開發(fā)GUI庫pyqt5的詳細使用方法及各控件的屬性與方法,需要的朋友可以參考下2020-02-02
pygame學(xué)習(xí)筆記(2):畫點的三種方法和動畫實例
這篇文章主要介紹了pygame學(xué)習(xí)筆記(2):畫點的三種方法和動畫實例,本文講解了單個像素(畫點)、連接多個點形成線、引用圖像、動畫完整實例,需要的朋友可以參考下2015-04-04
Python文件監(jiān)聽工具pyinotify與watchdog實例
今天小編就為大家分享一篇關(guān)于Python文件監(jiān)聽工具pyinotify與watchdog實例,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-10-10
使用python調(diào)用zxing庫生成二維碼圖片詳解
本篇文章主要介紹了使用python調(diào)用zxing庫生成二維碼圖片,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-01-01
Python調(diào)用ChatGPT?API接口的用法詳解
ChatGPT可以實現(xiàn)chat,生成圖片,識別關(guān)鍵,改錯等等功能,本文簡單的給大家介紹一下如何使用python調(diào)用ChatGPT?API接口,感興趣的小伙伴可以參考一下2023-05-05
Python中的shape[0]、shape[1]和shape[-1]使用方法
shape函數(shù)是Numpy中的函數(shù),它的功能是讀取矩陣的長度,比如shape[0]就是讀取矩陣第一維度的長度,這篇文章主要介紹了Python中的shape[0]、shape[1]和shape[-1]使用方法,需要的朋友可以參考下2023-07-07
在Python中使用cookielib和urllib2配合PyQuery抓取網(wǎng)頁信息
這篇文章主要介紹了在Python中使用cookielib和rllib2配合PyQuery抓取網(wǎng)頁信息的教程,主要是利用PyQuery解析HTML來實現(xiàn),需要的朋友可以參考下2015-04-04

