一、概述:
记录封装常用autojs语法及案例,方便日后急速上手使用,高手请绕路!
二、基础案例
1.上传图片剪切并返回图片
- 由于我的autojs的images.clip方法在使用是报错,所以换种方式剪切图片;
- 方式:通过接口处理图片,后端接口服务为python+flask
服务端:
#!/usr/bin/env python # encoding: utf-8 import flask from PIL import Image from io import BytesIO from werkzeug.utils import secure_filename from flask import request, send_from_directory,jsonify server = flask.Flask(__name__)#创建Flask对象server # post方法:上传文件的 @server.route('/upload', methods=['post']) def upload(): imgData = request.files.get('file')#文件流 cc=request.values.get('chen') dd=eval(cc) if imgData and dd: # chen = secure_filename(imgData.filename)#获取文件名 # imgData.save(chen)#保存图片 # imgData.seek(0)#重新定义指针到文件开头 ###读取文件流bytes chen = request.files["file"].stream.read() #把bytes数组还原成图片 img = Image.open(BytesIO(chen)) print('图片尺寸:',img.size) #指定区域剪切图片 cropped = img.crop((dd)) # (x1, y1, x2, y2) cropped.save(r"./test.png")#保存图片 return send_from_directory(r'./','test.png', as_attachment=True) #返回要下载的文件内容给客户端 else: return jsonify({"msg": "false", "ret": 2,"code": "fill","text":"图片处理异常或没有传坐标"}) if __name__ == '__main__': server.run(port=8000, debug=True, host='0.0.0.0')