最近笔者有个东西,需要上传的时候,让用户来裁剪图片,网上基本的做法,就是在本地的浏览器裁剪完毕,把裁剪后的坐标情况告诉服务器,让服务器来裁剪,因为笔者不是用PHP,无法享受GD模块的帮助了,所以利用python来裁剪。
代码语言:javascript复制# -*- coding: utf-8 -*-
import Image
import sys
import os.path
from datetime import *
import random
import time
IMAGE_BAKUP = "/few"
#_CONTENT_TYPES = { '.png': 'image/png', '.gif': 'image/gif', '.jpg': 'image/jpeg', '.jpeg': 'image/jpeg', '.jpe': 'image/jpeg' }
_CONTENT_TYPES = { 'image/png': '.png', 'image/gif': '.gif', 'image/jpeg': '.jpg', 'image/jpeg': '.jpeg' }
IMAGE_BAKUP = ''
IMAGE_PATH = sys.arg[1]
IMAGE_X1 = sys.arg[2]
IMAGE_Y1 = sys.arg[3]
IMAGE_X2 = sys.arg[4]
IMAGE_Y2 = sys.arg[5]
im = Image.open(IMAGE_PATH) #打开图片句柄
box = (IMAGE_X1,IMAGE_Y1,IMAGE_X2,IMAGE_Y2) #设定裁剪区域
region = im.crop(box) #裁剪图片,并获取句柄region
region.save(IMAGE_BAKUP datetime.now() random.randint(0,99),) #保存图片
print int(time.time());
print '%s%s-%s%s'%(IMAGE_BAKUP,int(time.time()),random.randint(0,99), _CONTENT_TYPES[_CONTENT_TYPES])