微信小程序分享的图片被裁切了。怎么让他不裁剪正常比例5:4显示

这篇具有很好参考价值的文章主要介绍了微信小程序分享的图片被裁切了。怎么让他不裁剪正常比例5:4显示。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 现在的效果微信小程序分享的图片被裁切了。怎么让他不裁剪正常比例5:4显示

希望的效果

微信小程序分享的图片被裁切了。怎么让他不裁剪正常比例5:4显示

 最主要的是下面的这个函数。把图片转成了5:4的临时图片

cutShareImg(doctorImg:string ){
      let that=this;
      return new Promise((resolve) => {
		wx.getImageInfo({
		  src: doctorImg,  // 这里填写网络图片路径 
		  success: (res) => {
			var data = res
			console.log(res)
			wx.createSelectorQuery()
			.select('#canvas') // 在 WXML 中填入的 id
			.fields({ node: true, size: true })
			.exec((res) => {
			   // Canvas 对象
			   console.log(res)
			  const canvas = res[0].node
			  // 渲染上下文
			  const ctx = canvas.getContext('2d')
			  let width = data.width/8;
			  let height = data.height/8;
			  let path = data.path;

			  // Canvas 画布的实际绘制宽高
			  var widths = height*5/4
			  const dpr = this.getPixelRatio();
			  console.log('dpr',dpr)
			  var w = (widths-width)/2
			  canvas.width = widths * dpr
			  canvas.height = height * dpr
			  ctx.scale(dpr, dpr)
			  ctx.clearRect(0, 0, widths, height)
			  // 图片对象
			  const image = canvas.createImage()
			  console.log(image)
			  image.onload = () => {
				// 将图片绘制到 canvas 上
				ctx.drawImage(image, w, 0,width,height)
				wx.canvasToTempFilePath({
					canvas,
					success: res => {
						// 生成的图片临时文件路径
						const tempFilePath = res.tempFilePath;
						resolve(tempFilePath)
					},
				  })
			  }
			  image.onerror = (err:any) => {
					console.log(err)
				}
			  image.src= path			 
			})
		  }
		});
       })
	  },

 页面上。使用定位让用户看不到这个绘图,但是实际上只是不出现在可视范围内

<canvas id="canvas" type="2d" style="position: absolute; top: -1000px; left: -1000px;"></canvas>

然后调用函数把你的图片换成这个临时的图片

this.setData({
    shareImg:this.cutShareImg(options.imgSrc)
})}
onShareAppMessage() {
return {
   title: '标题',
   imageUrl: this.data.shareimg,
   path: "" 
}

}文章来源地址https://www.toymoban.com/news/detail-488505.html

到了这里,关于微信小程序分享的图片被裁切了。怎么让他不裁剪正常比例5:4显示的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序(uniapp)-实现分享图片给微信好友

    官方地址: 微信开放文档 | wx.showShareImageMenu(Object object) 示例代码:

    2024年02月11日
    浏览(36)
  • 微信小程序如何自定义分享卡片文案和图片

    微信小程序提供了onShareAppMessage方法,专门用来监听用户点击页面内转发按钮(button 组件 open-type=\\\"share\\\")或右上角菜单“转发”按钮的行为,并自定义转发内容。 注意:只有定义了此事件处理函数,右上角菜单才会显示“转发”按钮 参数 类型 说明 最低版本 from String 转发事

    2024年02月13日
    浏览(28)
  • 微信小程序分享图片给微信好友(如二维码)

    目录 前言 一、使用哪种api? 二、对图片的处理需要转化为临时路径 三、Windows端兼容性问题 最近在公司开发一个微信小程序项目,用到的uniapp技术,在分享图片时,查看了uniapp的技术文档,写的还是很粗糙的,说得不太清楚,在我看了一个下午得出了一个结论,uniapp并没有

    2024年02月11日
    浏览(35)
  • 分享一下微信小程序里怎么开店

    如何在微信小程序中成功开店:从选品到运营的全方位指南 一、引言 随着微信小程序的日益普及,越来越多的人开始尝试在微信小程序中开设自己的店铺。微信小程序具有便捷、易用、即用即走等特点,使得开店门槛大大降低。本文将详细介绍如何在微信小程序中成功开店

    2024年02月06日
    浏览(32)
  • uniapp 微信小程序 绘制海报,长按图片分享,保存海报

    uView UI 2.0 dcloud 插件市场地址

    2024年02月12日
    浏览(41)
  • 简单分享下怎么创建一个微信小程序

    怎么创建一个微信小程序?三招教你这样做!!微信小程序不会做没关系,看我这篇文章就够啦!!实现0基础到大神的瞬间飞跃不是梦!! 戳下方链接即可直达官网,上千种行业精美模板任君挑选,快一起来试试吧!让小程序制作不再困难!上千个行业精美模板等你来挑,拖拽式搭建小

    2024年02月13日
    浏览(30)
  • 使用taro+canvas实现微信小程序的图片分享功能

    二轮充电业务中,用户充电完成后在订单详情页展示订单相关信息,用户点击分享按钮唤起微信小程序分享菜单,将生成的图片海报分享给微信好友或者下载到本地,好友可通过扫描海报中的二维码加群领取优惠。 使用场景及功能:微信小程序 生成海报图片 分享好友 下载图

    2024年02月05日
    浏览(49)
  • uniapp 微信小程序 动态生成海报分享朋友圈,需先保存图片

    直接拷贝代码,不使用插件,自己纯代码实现。 从相册 或拍照 选择一个图片做海报背景。 大吉大利 今晚吃鸡。

    2024年02月11日
    浏览(59)
  • 怎么做微信小程序商家店铺_分享商家店铺小程序制作

    1、实体店铺的老板们可以使用营业执照和法人绑定的微信免费开通一个微信商家店铺小程序。 2、使用微信小商店助手开通一个也是免费的小商店助手小程序。 3、购买成熟商城小程序系统,一般年2000元左右。商城小程序系统要比微信自家推出的小程序功能强大很多。 4、找

    2024年02月12日
    浏览(31)
  • 微信小程序 怎么插入图片?image组件的使用教程。

    这期我们来学学怎么在小程序中插入图片         是小程序中一个图片的组件         image组件有一个默认宽度和高度(宽300px,高240px)         支持 JPG、PNG、SVG、WEBP、GIF 等格式,2.3.0 起支持云文件ID。 我们先添加一个image组件给他一个边框看看他的默认情况  我们从

    2023年04月09日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包