微信小程序中将图片截图为正方形(自动居中)
没啥可说的,直接看代码吧(邪恶的微信小程序和浏览器的还不一样)
//将用户图片自动剪切成正方形
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中的返回值就是截取后的图片临时地址
相关文章:
微信小程序中将图片截图为正方形(自动居中)
没啥可说的,直接看代码吧(邪恶的微信小程序和浏览器的还不一样) //将用户图片自动剪切成正方形 const cutImgToSquare (imgPath: string) > {//ts-ignorewx.createSelectorQuery().select(#canvas).fields({ node: true, size: true }).…...
传统的自动化行业的触摸屏和上位机,PLC是否会被取代?
传统的自动化行业的触摸屏和上位机是否会被取代? 在工业自动化领域,触摸屏和上位机长期扮演着核心角色,尤其在污水处理、化工生产等场景中,它们通过实时数据采集、逻辑控制、报警联动等功能,保障了生产设备的稳定运行…...
【论文精读】VLM-AD:通过视觉-语言模型监督实现端到端自动驾驶
论文地址: VLM-AD: End-to-End Autonomous Driving through Vision-Language Model Supervision 摘要 人类驾驶员依赖常识推理来应对复杂多变的真实世界驾驶场景。现有的端到端(E2E)自动驾驶(AD)模型通常被优化以模仿…...
2024年数字政府服务能力优秀创新案例汇编(附下载)
12月19日,由中国电子信息产业发展研究院指导、中国软件评测中心主办的“2024数字政府评估大会”在北京召开,大会主题是:为公众带来更好服务体验。 会上,中国软件评测中心副主任吴志刚发布了2024年数字政府服务能力评估结果&#…...
Ollama Docker 镜像部署
文章来源:Docker 部署文档 -- Ollama 中文文档|Ollama官方文档 仅 CPU docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama英伟达 GPU 安装 NVIDIA Container Toolkit。 使用 Apt 安装 配置存储库 curl -fsSL https://nvidia.g…...
[深度学习][python]yolov12+bytetrack+pyqt5实现目标追踪
【算法介绍】 实时目标检测因其低延迟特性而持续受到广泛关注,具有重要的实际应用价值[4, 17, 24, 28]。其中,YOLO系列[3, 24, 28, 29, 32, 45-47, 53, 57, 58]通过有效平衡延迟与精度,在该领域占据主导地位。尽管YOLO的改进多集中在损失函数…...
【深度学习】矩阵的理解与应用
一、矩阵基础知识 1. 什么是矩阵? 矩阵是一个数学概念,通常表示为一个二维数组,它由行和列组成,用于存储数值数据。矩阵是线性代数的基本工具之一,广泛应用于数学、物理学、工程学、计算机科学、机器学习和数据分析等…...
我是如何从 0 到 1 找到 Web3 工作的?
作者:Lotus的人生实验 关于我花了一个月的时间,从 0 到 1 学习 Web3 相关的知识和编程知识。然后找到了一个 Web3 创业公司实习的远程工作。 👇👇👇 我的背景: 计算机科班,学历还可以(大厂门槛水平) 毕业工…...
《Keras 3 :使用 Vision Transformers 进行物体检测》:此文为AI自动翻译
《Keras 3 :使用 Vision Transformers 进行物体检测》 作者:Karan V. Dave 创建日期:2022 年 3 月 27 日最后修改时间:2023 年 11 月 20 日描述:使用 Vision Transformer 进行对象检测的简单 Keras 实现。 (i) 此示例使用 Keras 3 在 Colab 中查看 GitHub 源 介绍 A…...
java(spring boot)实现向deepseek/GPT等模型的api发送请求/多轮对话(附源码)
我们再启动应用并获取api密钥后就可以对它发送请求了,但是官方文档对于如何进行多轮对话以及怎么自定义参数并没有说的很清楚,给的模板也没有java的,因此我们需要自己实现。 import org.json.JSONArray; import org.json.JSONObject;import j…...
module ‘cv2.dnn‘ has no attribute ‘DictValue‘解决办法
module ‘cv2.dnn‘ has no attribute ‘DictValue‘解决办法 pip install opencv-python4.7.0.72 -i https://pypi.tuna.tsinghua.edu.cn/simple 测试: python -c"import cv2"...
将RocketMQ集成到了Spring Boot项目中,实现站内信功能
1. 添加依赖 首先,在pom.xml中添加RocketMQ的依赖: <dependencies><!-- Spring Boot Starter Web --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifac…...
Deepseek 怼CHATGPT实况
提示词: 用犀利的语言批评ChatGPT 深度思考(R1) 嗯,用户让我用犀利的语言批评ChatGPT。首先,我需要理解他们的动机。可能他们遇到了ChatGPT的某些问题,比如回答不准确或者缺乏深度,所以想表达不满。也有…...
基础篇11-图像分割(上)--阈值的方法
图像分割是图像处理的重要内容,是位于底层的图像处理、特征提取与上一层次的图像分析之间的关键步骤。图像分割的相关技术较多,分为三篇介绍。本节是上篇,介绍基于阈值的技术。 1 引言 图像分割是计算机视觉和图像处理中的核心任务之一&…...
[特殊字符] LeetCode 62. 不同路径 | 动态规划+递归优化详解
在解 LeetCode 的过程中,路径计数问题是动态规划中一个经典的例子。今天我来分享一道非常基础但极具代表性的题目——不同路径。不仅适合初学者入门 DP(动态规划),还能帮助你打下递归思维的基础。 本文将介绍: &…...
常用的 JVM 参数:配置与优化指南
文章目录 常用的 JVM 参数:配置与优化指南引言 1. 内存管理参数1.1 堆内存配置1.2 方法区(元空间)配置1.3 直接内存配置 2. 垃圾回收参数2.1 垃圾回收器选择2.2 GC 日志配置2.3 GC 调优参数 3. 性能监控参数3.1 堆内存转储3.2 JVM 监控3.3 远…...
【JavaWeb学习Day17】
Tlias智能学习系统(员工管理) 新增员工: 三层架构职责: Controller:1.接收请求参数(员工信息);2.调用service方法;3.响应结果。 具体实现: /***新增员工…...
DeepSeek 提示词:定义、作用、分类与设计原则
🧑 博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编…...
前端大文件上传
1. 开场概述 “大文件上传是前端开发中常见的需求,但由于文件体积较大,直接上传可能会遇到网络不稳定、服务器限制等问题。因此,通常需要采用分片上传、断点续传、并发控制等技术来优化上传体验” 2. 核心实现方案 “我通常会采用以下方案…...
JDK源码系列(一)Object
Object 概述 Object类是所有类的基类——java.lang.Object。 Object类是所有类的基类,当一个类没有直接继承某个类时,默认继承Object类Object类属于java.lang包下,此包下的所有类在使用时无需手动导入,系统会在程序编译期间自动…...
ubuntu的基本使用
一.ubuntu的基本操作ctrlaltt:启动终端ctrlshift:终端字体变大ctrl-:终端字体变小ctrlshiftc/v:终端复制/粘贴文本cat/etc/issue:查看操作系统的版本tab键:自动补齐上下键:历史命令二.linux常用的shell命令1. linuxubuntu:~$:命令提示符解释&…...
别再手动调IO了!用STM32+EtherCAT驱动4个步进电机,TwinCAT/Codesys配置全流程(附XML文件)
基于STM32的EtherCAT总线步进电机控制实战指南 在工业自动化领域,EtherCAT总线技术正逐步取代传统的脉冲控制方式,成为多轴运动控制的首选方案。本文将详细介绍如何使用STM32微控制器结合EtherCAT协议驱动4个步进电机,并完整解析TwinCAT和Cod…...
Latex学习第二坑——无法导入参考文献的bug
#latex 本人很喜欢使用latex来排版参考篇文献,确实非常方便。但是也有很多需要关注的小细节。下面结合这次文献编辑的经验。首先说bug的表现:(1)表现:使用pdflatexbibtexpdflatex*2的编译顺序,第一次编译会…...
Ceph块存储与对象存储实战指南
Ceph 分布式存储学习笔记(三):块存储和对象存储管理 Ceph 是一个开源的分布式存储系统,提供高性能、高可靠性和可扩展性。块存储(RBD)和对象存储(RGW)是 Ceph 的两种核心存储类型&a…...
自我一致性 (Self-Consistency) + 思维树 (ToT) 详解 + 逻辑推理实战
这两个是 思维链 (CoT) 的超级升级版,也是现在所有高级 AI Agent(比如 GPT-4o、豆包 4.0)解决复杂推理问题的核心技术。它们能让大模型从 "一条路走到黑" 变成 "会尝试不同思路、会自我纠错、会选最优解"。一、自我一致性…...
为什么番茄小说下载器能成为你的离线阅读神器?
为什么番茄小说下载器能成为你的离线阅读神器? 【免费下载链接】Tomato-Novel-Downloader 番茄小说下载器不精简版 项目地址: https://gitcode.com/gh_mirrors/to/Tomato-Novel-Downloader 你是否曾经在地铁里信号断断续续,正看到小说精彩处却无法…...
目标检测面试必考:深入理解IoU、GIoU、DIoU损失函数的区别与代码实现
目标检测进阶:从IoU到CIoU的损失函数演进与实战解析 在计算机视觉领域,目标检测任务的核心挑战之一是如何精确评估预测框与真实框之间的匹配程度。传统IoU(Intersection over Union)作为基础指标,虽然直观有效…...
不装了!库克公开认错:14 年前硬推苹果地图,是首个重大决策失误
4 月 22 日,即将在 9 月卸任 CEO 的库克,在苹果内部全员大会上罕见复盘职业生涯,亲口承认:2012 年苹果地图的上线,是他执掌苹果以来首个真正重大的错误。这场“自我揭短”,发生在库克交接权力、回顾 15 年得…...
为什么晒红的茶汤是“红亮”而不是“红浓”?
品鉴一杯红茶,我们常被其汤色所吸引。在众多红茶品类中,一个有趣的现象是:采用传统焙火工艺的红茶,茶汤往往呈现出“红浓”的质感,而源自哀牢山新平者竜乡山岛莊园的永奕號古法晒红,其茶汤却以“红润透亮”…...
告别重复配置!用VS2022项目模板一键搞定SDL2.26开发环境(附模板文件)
VS2022项目模板革命:SDL2.26开发环境一键部署实战指南 每次新建SDL项目都要重复配置头文件路径、库依赖和链接器设置?这种低效操作该终结了。本文将带你深度解锁Visual Studio 2022的项目模板功能,将SDL2.26开发环境配置过程封装成可复用的解…...
