HX版本3.0.5.20210107
代码片段如下:
var myCanvas = ‘’
onReady() {
let that = this
myCanvas = uni.createCanvasContext('posterCanvas', this);
}
myCanvas.drawImage('../../static/images/commonImg/qinduoduoicon.png', 10, parseInt(that.canvasH + 75), 20, 20)
myCanvas.drawImage(this.src, parseInt((that.canvasW - (that.canvasW - 180))/2), parseInt(that.canvasH + 130), that.canvasW - 180, that.canvasH - 180);
// 加文字隐形效果
myCanvas.shadowColor = 'rgba(132,65, 0, 1)';
myCanvas.shadowOffsetX = 1;
myCanvas.shadowOffsetY = 3;
myCanvas.shadowBlur = 2;that.couponPrice
if(that.couponPrice != parseFloat(that.goodsContent.min_group_price/100).toFixed(2)){
// 券后价不等于抢购价 有优惠券的时候
myCanvas.setFontSize(10)
myCanvas.fillStyle="#fff";
myCanvas.fillText('券后价¥', 10, parseInt(that.canvasH + 30))
myCanvas.setFontSize(16)
myCanvas.fillStyle="#fff";
myCanvas.fillText(parseFloat(that.couponPrice).toFixed(2), 50, parseInt(that.canvasH + 30))
myCanvas.setFontSize(10)
myCanvas.fillStyle="#fff";
myCanvas.fillText('原价¥' + parseFloat(that.goodsContent.min_group_price/100).toFixed(2), 130, parseInt(that.canvasH + 30))
myCanvas.setFontSize(10)
myCanvas.fillStyle="#fff";
myCanvas.fillText('使用时间:' + that.getBeginTime(that.goodsContent.coupon_start_time) + '~' + that.getEndTime(that.goodsContent.coupon_end_time), 10, parseInt(that.canvasH + 55))
//以下方法
console.log(myCanvas.draw())打印出undefined
myCanvas.draw(true, () => {
uni.canvasToTempFilePath({
canvasId: 'posterCanvas',
success: (res) => {
// 在H5平台下,tempFilePath 为 base64
// console.log(res.tempFilePath)
that.canvasImgCon = res.tempFilePath;
uni.hideLoading();
},
fail: () => {
uni.showToast({
title: '名片加载失败',
duration: 2000
});
}
});
});
9***@qq.com (作者)
安卓和ios都不行,是用的自定义基座。
2021-01-25 08:37
DCloud_UNI_GSQ
回复 9***@qq.com: 是不是基座版本和 HBuilderX 不符,重新打包一个基座试试
2021-01-25 11:08
9***@qq.com (作者)
回复 DCloud_UNI_GSQ: 早上更新了最新版的HX和重新打基座了也不行,就很奇怪。
2021-01-25 14:30
DCloud_UNI_GSQ
回复 9***@qq.com: 使用默认基座测试一下
2021-01-25 16:18
9***@qq.com (作者)
回复 DCloud_UNI_GSQ: 默认的也不行。
2021-01-25 16:22
DCloud_UNI_GSQ
回复 9***@qq.com: 测试工程和步骤提供一下,我试试
2021-01-25 16:45
9***@qq.com (作者)
回复 DCloud_UNI_GSQ: 刚刚试了,H5的也不行了,这样的话是不是要检查一下写法?
2021-01-25 17:10
DCloud_UNI_GSQ
回复 9***@qq.com: 也可以先下载一个旧版本的 HBuilderX 试试
2021-01-25 17:11
9***@qq.com (作者)
回复 DCloud_UNI_GSQ: 没下旧的测试,myCanvas.draw()打印这个东西是undefined,myCanvas.draw打印这个东西是一个方法,多个括号就undefined这个是怎么回事?
2021-01-26 09:11
深海智行
回复 9***@qq.com: 兄弟,括号是执行。。。
2021-01-26 11:03
9***@qq.com (作者)
回复 DCloud_UNI_GSQ:解决了,加个延时器跟uni.getImageInfo()网络图片缓存到本地就可以了。
2021-01-26 15:50