小程序转发图片尺寸如何设置
发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,本篇内容介绍了"小程序转发图片尺寸如何设置"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. 创建C
千家信息网最后更新 2025年01月21日小程序转发图片尺寸如何设置
本篇内容介绍了"小程序转发图片尺寸如何设置"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
1. 创建Canvas画布
前端要裁剪图片,我们首先就要想到用Canvas,写H5如此,微信小程序当然也是如此。
我们要用到的canvas当然不能直接在页面中显示,所以可以使用负定位值的方式将其隐藏。
2. 下载网络图片
我们可以使用wx.downloadFile()来下载网络图片,也可以使用wx.getImageInfo(),因为我们这里需要获取到图片的宽高,所以这里就要用到wx.getImageInfo()来进行图片的下载。
wx.getImageInfo({src: "", // 这里填写网络图片路径success: (res) => {// 这个是我封装的裁剪图片方法(下面将会说到)clipImage(res.path, res.width, res.height, (img) => {console.log(img); // img为最终裁剪后生成的图片路径,我们可以用来做为转发封面图});}});
3. 裁剪图片并导出
以下是我封装的专门用于裁剪图片比例大于 5:4 的图片,裁剪方式是截取图片中间部分(当然你也可以试着写下裁剪小于 5:4 的图片):
/* 裁剪封面,src为本地图片路径或临时文件路径,imgW为原图宽度,imgH为原图高度,cb为裁剪成功后的回调函数*/const clipImage = (src, imgW, imgH, cb) => { // ‘canvas’为前面创建的canvas标签的canvas-id属性值let ctx = wx.createCanvasContext('canvas');let canvasW = 640, canvasH = imgH; if (imgW / imgH > 5 / 4) { // 长宽比大于5:4canvasW = imgH * 5 / 4;} // 将图片绘制到画布ctx.drawImage(src, (imgW - canvasW) / 2, 0, canvasW, canvasH, 0, 0, canvasW, canvasH)// draw()必须要用到,并且需要在绘制成功后导出图片ctx.draw(false, () => {setTimeout(() => {// 导出图片wx.canvasToTempFilePath({width: canvasW,height: canvasH,destWidth: canvasW,destHeight: canvasH,canvasId: 'canvas',fileType: 'jpg',success: (res) => {// res.tempFilePath为导出的图片路径typeof cb == 'function' && cb(res.tempFilePath);}})}, 1000);})}
"小程序转发图片尺寸如何设置"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
图片
路径
程序
网络
尺寸
成功
内容
原图
封面
方式
更多
画布
知识
封装
实用
学有所成
接下来
函数
前端
后生
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
小学网络安全工作方案
大学网络安全知识竞赛题库
郑州鼎益服务器配件
怎么看服务器时间
我的世界手机版服务器生成商店
游戏服务器多进程代码启动顺序
软件开发敏捷模型的敏捷之处
英雄联盟不同区的服务器在哪里
数据库中确定数据位置的方法
新东方媒体数据库
数据库中os是什么意思6
网络安全防护怎么开
钻石大陆服务器
上海万达通网络技术有限公司
军队网络安全10条禁令
湛江新品戴尔服务器
分销系统软件开发公司责任
思迈克数据库安全审计系统
浪潮软件开发几点下班
监控室网络安全管理制度
达梦数据库启动监听
购票系统软件开发文件
福建服务器维修哪家便宜云主机
sql 2008怎么删除数据库
波谱数据库包括什么
zw软件开发
广州易新网络技术有限公司
bdp数据库
计算机网络技术是不是软件技术
七天天气预报软件开发