最近由于网站对图片尺寸的需要,用python写了个小脚本,方便进行图片尺寸的一些调整,特记录如下:

# 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)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

本文标题: Python实现图片尺寸缩放脚本

本文地址: http://www.cppcns.com/jiaoben/python/222241.html

python如何调整图片大小_Python实现图片尺寸缩放脚本相关推荐

  1. 视频直播源码,插入图片、删除图片、设置图片大小、提取图片

    视频直播源码,插入图片.删除图片.设置图片大小.提取图片 1.插入图片 Document对象有一个add_paragraph()方法插入图片,只需要传入路径或者字节流即可,实际上它也是调用段落的Run ...

  2. jquery实现上传图片及图片大小验证、图片预览效果代码

    jquery实现上传图片及图片大小验证.图片预览效果代码 jquery实现上传图片及图片大小验证.图片预览效果代码 上传图片验证 */ function submit_upload_picture() ...

  3. JAVA改变图片大小,将图片改为Jpg格式

    JAVA改变图片大小,将图片改为Jpg格式 package util;import javax.imageio.ImageIO; import java.awt.*; import java.awt. ...

  4. 图片大小自动按比例缩小图片不变形 解决方法

    图片大小自动按比例缩小图片不变形 解决方法 参考文章: (1)图片大小自动按比例缩小图片不变形 解决方法 (2)https://www.cnblogs.com/liujunchen/p/7598649 ...

  5. python如何调整图片大小_Python基础进阶 - 如何使用Python调整图像大小

    Python已成为编程语言的首选.不仅适用于一般的面向对象的编程,还适用于各种科学,数学,统计等应用. 由于强大的开发人员社区已经使用Python开发了用于各种目的的库和API,因此所有这些都是可能的 ...

  6. python批量resize图片大小_python opencv 批量改变图片的尺寸大小的方法

    我目标文件夹下有一大批图片,我要把它转变为指定尺寸大小的图片,用pthon和opencv实现的. 以上为原图片. import cv2 import os # 按指定图像大小调整尺寸 def resi ...

  7. python tkinter获取屏幕大小_Python使用鼠标滚轮调整tkinter应用程序窗口大小

    图书推荐:<Python程序设计基础与应用>(ISBN:9787111606178),董付国,机械工业出版社 图书详情:用书教师可以联系董老师获取教学大纲.课件.源码.教案.考试系统等配套 ...

  8. python图像转字符画_Python实现图片转字符画的示例

    字符画真的很有意思,将图片中的像素用字符代替,就生成了字符画. 但是像素是有颜色深浅的,我们如何将带有不同颜色的像素编码为对应的字符呢? 转化方法: 将彩色图片转化为灰度图 根据颜色深浅的RGB值(值 ...

  9. pil库修改图片大小_python 利用PIL库进行更改图片大小的操作

    python 是可以利用PIL库进行更改图片大小的操作的,当然一般情况下是不需要的,但是在一些特殊的利用场合,是需要改变图片的灰度或是大小等的操作的,其实用python更改图片的大小还是蛮简单的,只需 ...

  10. python给指定目录所有图片添加水印logo,批量生成替换文件,自适应图片大小添加到图片正中间

    首先需要安装PIL,pip install 2.x的版本安装 pip insall PIL 3.x的python版本安装 pip install pillow 实现功能步骤: 1.读取指定目录jpg或 ...

最新文章

  1. vmware虚拟机怎么让窗口自动调整大小适应主机
  2. iOS进阶之架构设计MVVM的理解(3)
  3. 监控服务器怎么增加碟机,微服务业务监控方法及服务器专利_专利申请于2017-12-15_专利查询 - 天眼查...
  4. 【Python】图解Pandas数据合并:concat、join、append
  5. firewalld防火墙简介
  6. leetcode - 413. 等差数列划分
  7. 代码阅读软件kscope源码安装指导
  8. ICML 2019 | 强化学习用于推荐系统,蚂蚁金服提出生成对抗用户模型(附论文下载链接)...
  9. Golang结构体与面向对象
  10. Kotlin 能取代 Java 吗?
  11. 互联网金融又任性撒钱了
  12. java get 和post_[Java教程]get和post方法的区别
  13. xp系统 护眼模式
  14. php日程提醒,php日程控件
  15. angular2 mysql_零起步学习angular2_angularjs教程_汇智网
  16. 总结整理Echarts双y轴曲线图(全)
  17. 文件hidsdi.h
  18. 关于-32768的补码!
  19. OUU益生菌精耕胃肠健康,获奖天猫国际微生态创新大会
  20. 使用JQuery快速高效制作网页交互特效第九章所有上机

热门文章

  1. 微信群二维码有效期如何延长?突破7天有效期的方法!
  2. 繁体字生僻字数据库报错处理
  3. java分支讵_Java实现简体字向繁体字的转换
  4. python实部和虚部_Python复数表示表示和计算
  5. 使用python判断文件是否是excel格式
  6. 51单片机c语言音乐盒设计,基于51单片机的音乐盒课程设计开题报告精品
  7. 极值点、驻点、拐点的区别-----专升本
  8. arduino超声波测距接线图详细_Arduino教程:认识超声波传感器(简明版)
  9. win10相机计算机无法使用,win10系统相机怎么用 win10系统相机无法使用怎么解决...
  10. 应用计算机测线性电阻伏安特性曲线,测绘线性电阻和非线性电阻的伏安特性曲线.pdf...