<canvas style="width: 400px; height: 400px;" canvas-id="firstCanvas" id="firstCanvas"></canvas>
export default {
data() {
return {}
},
methods: {
getImageInfo(src) {
return new Promise( resolve => {
uni.getImageInfo({
src,
success(res) {
resolve(res)
}
})
})
},
},
async mounted() {
var context = uni.createCanvasContext('firstCanvas', this)
context.setStrokeStyle("#00ff00")
context.setLineWidth(5)
context.rect(10, 10, 350, 388)
context.stroke()
context.save()
context.setFillStyle("#ff0000")
context.beginPath()
context.arc(100, 100, 60, 0, 2 * Math.PI)
context.closePath()
context.fill()
context.clip()
const {path: path0} = await this.getImageInfo('https://m.360buyimg.com/babel/jfs/t1/196317/32/13733/288158/60f4ea39E6fb378ed/d69205b1a8ed3c97.jpg')
context.drawImage(path0, 100, 0, 200, 200)
context.restore()
context.save()
context.setFillStyle("#000000")
context.beginPath()
context.arc(100, 250, 60, 0, 2 * Math.PI)
context.closePath()
context.fill()
context.clip()
const {path: path1} = await this.getImageInfo('https://imgcps.jd.com/ling4/100016514918/5LiA4oCc5LyB4oCd5byA6Zeo57qi/5Yqe5YWs6K6-5aSH54iG5qy-5LiT5Lqr/p-5bd8253082acdd181d02f9df/0b68e957/cr/s/q.jpg')
context.drawImage(path1, 50, 100, 200, 200)
context.restore()
context.draw(false)
}
}