当前位置: 首页 > news >正文

微信小程序中将图片截图为正方形(自动居中)

没啥可说的,直接看代码吧(邪恶的微信小程序和浏览器的还不一样

//将用户图片自动剪切成正方形
const cutImgToSquare = (imgPath: string) => {//@ts-ignorewx.createSelectorQuery().select('#canvas').fields({ node: true, size: true }).exec((res: any) => {const canvas = res[0].nodeconst ctx = canvas.getContext('2d')const image = canvas.createImage()image.onload = () => {const size = Math.min(image.width, image.height)canvas.width = sizecanvas.height = sizectx.clearRect(0, 0, canvas.width, canvas.height)ctx.drawImage(image, (image.width - size) / 2, (image.height - size) / 2, size, size, 0, 0, size, size)//@ts-ignorewx.canvasToTempFilePath({canvas,success: (res: any) => {console.log("调用成功", res)},fail: (err: any) => {console.log("调用失败", err)loading.value = falseuni.showToast({title: '图片上传失败!',icon: 'error'})},complete: (res: any) => {console.log("调用完成", res)}})}image.src = imgPath})
}

这里在wx.canvasToTempFilePath中的success中的返回值就是截取后的图片临时地址

http://www.lryc.cn/news/540913.html

相关文章:

  • 传统的自动化行业的触摸屏和上位机,PLC是否会被取代?
  • 【论文精读】VLM-AD:通过视觉-语言模型监督实现端到端自动驾驶
  • 2024年数字政府服务能力优秀创新案例汇编(附下载)
  • Ollama Docker 镜像部署
  • [深度学习][python]yolov12+bytetrack+pyqt5实现目标追踪
  • 【深度学习】矩阵的理解与应用
  • 我是如何从 0 到 1 找到 Web3 工作的?
  • 《Keras 3 :使用 Vision Transformers 进行物体检测》:此文为AI自动翻译
  • java(spring boot)实现向deepseek/GPT等模型的api发送请求/多轮对话(附源码)
  • module ‘cv2.dnn‘ has no attribute ‘DictValue‘解决办法
  • 将RocketMQ集成到了Spring Boot项目中,实现站内信功能
  • Deepseek 怼CHATGPT实况
  • 基础篇11-图像分割(上)--阈值的方法
  • [特殊字符] LeetCode 62. 不同路径 | 动态规划+递归优化详解
  • 常用的 JVM 参数:配置与优化指南
  • 【JavaWeb学习Day17】
  • DeepSeek 提示词:定义、作用、分类与设计原则
  • 前端大文件上传
  • JDK源码系列(一)Object
  • 【Python 打造高效文件分类工具】
  • 大数据组件(四)快速入门实时数据湖存储系统Apache Paimon(1)
  • 边缘安全加速(Edge Security Acceleration)
  • C/C++高性能Web开发框架全解析:2025技术选型指南
  • fedora 安装 ffmpeg 过程记录
  • 【GPU驱动】OpenGLES图形管线渲染机制
  • Spring Boot项目@Cacheable注解的使用
  • mac开发环境配置笔记
  • 重装CentOS YUM
  • 对免认证服务提供apikey验证
  • 数据库驱动免费下载(Oracle、Mysql、达梦、Postgresql)