canvas遇到的坑
1.文字换行
2.真机不能使用网络数据图片(真坑) 点击显示效果我就不写了,你们可以自己加一下

全部代码贴出来

   css#preview {width: 100%;height: 100%;background: rgba(0, 0, 0, 0.6);position: fixed;z-index: 999;top: 0;overflow: hidden;bottom: 0;}#preview button {width: 43%;position: absolute;bottom: 218rpx;left: 28%;z-index: 5;border-radius: 37rpx;height: 66rpx;line-height: 66rpx;background: #fd5b4c;}#preview image {width: 87%;position: absolute;top: 8%;left: 6%;z-index: 3;border-radius: 19rpx;}#preview .hide1 image {width: 10%;height: 6%;position: absolute;right: 0;left: 84%;}#preview text {position: absolute;bottom: 170rpx;left: 25%;z-index: 5;font-size: 22rpx;color: gainsboro;}canvas { position: fixed;top: 0;left: 10000rpx;}wxml<canvas canvas-id="shareImg" style="width:545px;height:771px;"></canvas>        <view hidden='{{hidden}}' id='preview' class="hide1{{show1?'':'show'}}"><image src='{{prurl}}' mode='widthFix'></image><button type='primary' size='mini' bindtap='save'>保存分享图</button><text>保存后,可以从手机相册分享到朋友圈</text><view class="hide1{{show1?'':'show'}}" bindtap='onTap'><image src='../../images/Close.png'></image></view></view>jsgetData() {/*商品详情接口数据代码省略*///下载图片var that = this;wx.downloadFile({   //需要小程序后台添加downloadFile域名url: res.result.product.images[0].url,    //接口返回数据type: 'image',     //类别success: function (res) {var _avatarPath = res.tempFilePathconst ctx = wx.createCanvasContext('shareImg');var imgPath = _avatarPath //商品图console.log(imgPath)var bgImgPath = '../../images/qrcode.jpg';  //二维码图ctx.setFillStyle('white')ctx.fillRect(0, 0, 6000, 2800);ctx.drawImage(imgPath, 120, 30, 320, 320);ctx.drawImage(bgImgPath, 40, 500, 120, 110);ctx.setFontSize(22)ctx.beginPath("")var lineWidth = 0;var canvasWidth = 300;var initHeight = 380;var lastSubStrIndex = 0;ctx.setFillStyle('black')var str = that.data.product.title     //商品价格名称ctx.fillText('长按识别图中的小程序码', 190, 540)ctx.fillText('查看详情', 190, 580)//文字换行    这个地方有可能报错注释掉就可以for (let i = 0; i < str.length; i++) {lineWidth += ctx.measureText(str[i]).width;if (lineWidth > canvasWidth) {ctx.fillText(str.substring(lastSubStrIndex, i), 18, initHeight);   //绘制截取部分initHeight += 34;  //文字行高lineWidth = 0;lastSubStrIndex = i;}if (i == str.length - 1) {//绘制剩余部分ctx.fillText(str.substring(lastSubStrIndex, i + 1), 18, initHeight);}}ctx.setFillStyle('red')ctx.fillText(that.data.product.price, 460, 380)     //that.data.product.price   商品价格数据ctx.setStrokeStyle('gainsboro')ctx.strokeRect(20, 450, 510, 0.1)ctx.stroke()ctx.draw()}})
}

转载于:https://www.cnblogs.com/Zhangqwr/p/9044497.html

小程序canvasu真机上数据图片不能使用相关推荐

  1. 微信小程序在真机上发起网络请求失败

    问题描述 在开发工具上发起网络请求没有问题,但是在真机上就收不到响应.(测试机型,荣耀9) 解决方法 代码中请求的url采用http协议即可.即使我在配置request合法域名时,采用的是https协 ...

  2. 微信小程序项目真机调试图片不显示处理

    微信开发者上图片显示,但在真机调试时不显示.查看数据库图片文件上传方式.如果是本地地址,改成网络地址即可.如图:  查找ip网络地址方法 按windows+R快捷键,输入CMD,输入ipconfig ...

  3. uniapp微信小程序无法使用本地静态资源图片,背景图在真机不显示方法

    前言 首先要说明,使用HBuilder或者vs Code工具开发的时候,在微信开发者工具调试的时候,我们使用本地图片是OK的,但是一旦放到真机上调试的时候,图片就显示不出来. 先看uniapp官网对背 ...

  4. imagepreview使用案例_微信小程序wx.previewImage预览图片实例详解

    一.小知识 二.例子 1.wxml 2.wxss .container { box-sizing:border-box; padding:20px; } .previewimg{ float:left ...

  5. 微信小程序云开发之数据分页云函数

    微信小程序云开发之数据分页云函数 2018-10-06 20:23:28       微信小程序的云开发可以自己对数据库进行操作而不需要后台,那么很常见的一个功能就是我们在读取数据的时候需要分页来获取 ...

  6. 微信小程序使用真机或开发工具进行http请求开发测试亲测有效

    微信小程序使用真机或开发工具进行http请求开发测试 1使用微信开发这工具进行http请求的配置 2:真机进行http请求 微信开发这平台要求上线微信小程序配置的合法域以及网络请求名必须是https, ...

  7. 壁纸小程序源码,支持图片搜索,下载,分享,可对接流量主

    很多小伙伴都喜欢给自己的博客站,搞一个小程序,让用户能方便访问.为什么小程序如此受青睐呢?因为小程序与APP的直接区别就是,我能在微信上直接得到我想要东西,比如看文章,下载壁纸,而不用繁琐的去下载AP ...

  8. (已更新)壁纸小程序源码,支持图片搜索,下载,分享

    很多小伙伴都喜欢给自己的博客站,搞一个小程序,让用户能方便访问.为什么小程序如此受青睐呢?因为小程序与APP的直接区别就是,我能在威信上直接得到我想要东西,比如看文章,下载壁纸,而不用繁琐的去下载AP ...

  9. 如何在微信小程序中爬取数据

    如何在微信小程序中爬取数据 下载Charles 在Charles中点击Help -> SSL Proxying -> Install Charles Root Certificate 然后 ...

最新文章

  1. java正则表达式及api_JAVA常用API:正则表达式regular expression
  2. Python标准模块—Regular Expressions
  3. 面试官:聊聊微信和淘宝扫码登录背后的实现原理?
  4. c语言文件打开函数,C语言fopen函数中文件打开方式(参数值)
  5. 不止代码:合唱队列(动态规划)
  6. 技术这东西,不可不看,不可全看.
  7. 【Java】最基本的命令行登录程序Demo
  8. C语言仅在函数中可见,如何学习C语言、入门C语言,看这篇就够了
  9. 解决ubuntu中出现:dpkg: error processing package install-info
  10. 测试freenas9.1搭建iscsi磁盘库
  11. 移动网流量用户身份识别系统的源代码_真武庙车辆识别系统安装效果图
  12. 直方图规定化计算过程
  13. 菜鸟的JavaScript自学笔记整理
  14. 惠普服务器关机自动重启,惠普电脑关机后自动重启怎么解决
  15. 游戏开发工程师岗位要求
  16. java.sql.SQLException: Access denied for user ‘‘@‘localhost‘ (using password: YES)
  17. 玩和平精英吃鸡用什么平板ipad好?
  18. 基于GAN的语音转换技术及语音合成TTS
  19. 64位Ubuntu系统安装Chrome浏览器
  20. 安装trinity、解决报错

热门文章

  1. bzoj4484[JSOI2015]最小表示
  2. Android开源之行之走进zxing,轻松实现二维码扫描(二)
  3. csv转json文件
  4. ASP.net Table 控件
  5. 两款开源Web功能测试工具
  6. python把英语句子成分字母_句子成分的表达字母
  7. echarts label加边框_echarts 添加自定义label标签
  8. python每隔30s检查一次_用Python写一个“离线语音提示器”来提醒我们别忘记了时间...
  9. map 循环_被问到Spring循环依赖怎么解决?秀给面试官看!内附图解
  10. python函数变量的作用域_学不会的Python函数——变量作用域