欲用此python脚本,需要安装python环境及扩展,在linux下直接yum安装
yum -y install python python-imaging
———————————————————————————————————-
#!/usr/bin/env python
#coding=utf-8
import re,urllib2,os,sys,urllib,time,subprocess,socket,cStringIO,urllib2,Image,random,glob,shutil,optparse
def suoluetu(filename=None,w=0,h=0):
outfile="suoluetu"+filename
x=251.0
y=390.0
if (w/x) > (h/y):
#宽度大爷高度
#print "ko"
im=Image.open(filename)
gao=h/y
ww=int(w/gao)
region=im.resize((ww,y))
region.save(outfile,quality=100)
qie=ww-x
box=(qie/2,0,x+qie/2,y)
img=Image.open(outfile)
region=img.crop(box)
region.save(outfile,quality=100)
else:
#高度大于宽度
#print "ok"
im=Image.open(filename)
gao=w/x
ww=int(h/gao)
region=im.resize((x,ww))
region.save(outfile,quality=100)
qie=ww-y
box=(0,qie/2,x,y+qie/2)
img=Image.open(outfile)
region=img.crop(box)
region.save(outfile,quality=100)
img=Image.open("yuantu.jpg")
x,y=img.size
suoluetu("yuantu.jpg",x,y)
———————————————————————————————————–
操作方法:
上传一张图片,和上面的py脚本放在一个目录下,直接运行:python suoluetu.py
然后就会生成宽251,高390的缩略图
附上生成图片的效果:
原图:
转载请注明:LINUX服务器运维架构技术分享 » PYTHON 生成缩略图截取掉中间位置