export function base64ThumbImage(file, quality, callback) { // 压缩图片需要的一些元素和对象 const reader = new FileReader(); const img = new Image(); return new Promise((resolve, reject) => { // 文件base64化,以便获知图片原始尺寸 reader.onload = (e) => { img.src = e.target.result; reader.readAsDataURL(file.file); // 缩放图片需要的canvas const canvas = document.createElement('canvas'); const context = canvas.getContext('2d'); // base64地址图片加载完毕后 img.onload = (e) => { const that = e.target; // 图片原始尺寸 const originWidth = that.width; const originHeight = that.height; // 最大尺寸限制 const maxWidth = 750; const maxHeight = 750; // 目标尺寸 let targetWidth = originWidth; let targetHeight = originHeight; // 图片尺寸超过400x400的限制 if (originWidth > maxWidth || originHeight > maxHeight) { if (originWidth / originHeight > maxWidth / maxHeight) { // 更宽,按照宽度限定尺寸 targetWidth = maxWidth; targetHeight = Math.round(maxWidth * (originHeight / originWidth)); } else { targetHeight = maxHeight; targetWidth = Math.round(maxHeight * (originWidth / originHeight)); // canvas对图片进行缩放 canvas.width = targetWidth; canvas.height = targetHeight; // 清除画布 context.clearRect(0, 0, targetWidth, targetHeight); // 图片压缩 context.drawImage(img, 0, 0, targetWidth, targetHeight); // canvas转为blob并上传 const dataUrl = canvas.toDataURL(file.type || 'image/png', quality); let res = dataUrl.replace( /^data:image\/\w+;base64,/, resolve({

然后在vue文件中使用

import { base64ThumbImage } from "@/utils/tools"; ## 注意传入的file参数是file格式 let that=this base64ThumbImage(file).then((dataUlr) => { that.photoBase64 = dataUlr.res;
python turtle模块zip下载 python turtle包

turtle的介绍 Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。 turtle绘图的基础知识 1. 画布(canvas) 画布就是turtle为我们展开用于绘图区域,我们可以设置它的大小和初始位置。 我们可以通过turtle