标签:CANVAS bg avatarurl 微信 ctx let PI Math 图片
1.绘制圆形头像
//绘制的头像宽度 let avatarurl_width = 40 //绘制的头像高度 let avatarurl_heigth = 40 //绘制的头像在画布上的位置 let avatarurl_x = 10 //绘制的头像在画布上的位置 let avatarurl_y = 10 // 绘制头像 ctx.save() // 开始创建一个路径 ctx.beginPath() // 画一个圆形裁剪区域 ctx.arc(avatarurl_width / 2 + avatarurl_x, avatarurl_heigth / 2 + avatarurl_y, avatarurl_width / 2, 0, Math.PI * 2, false) // 裁剪 ctx.clip() // 绘制图片 ctx.drawImage(this.data.postAvater, avatarurl_x, avatarurl_y, avatarurl_width, avatarurl_heigth) // 恢复之前保存的绘图上下文 ctx.restore()
2. 绘制4个像素的图片圆角
// 图片的x坐标 let bg_x = 10 // 图片的y坐标 let bg_y = 70 // 图片宽度 let bg_w = this.data.pageWidth - 116 // 图片高度 let bg_h = this.data.pageHeight * 0.35 // 图片圆角 let bg_r = 4 // 绘制海报背景图片圆角 ctx.save() ctx.beginPath() ctx.arc(bg_x + bg_r, bg_y + bg_r, bg_r, Math.PI, Math.PI*1.5) ctx.arc(bg_x + bg_w - bg_r, bg_y + bg_r, bg_r, Math.PI * 1.5, Math.PI * 2) ctx.arc(bg_x + bg_w - bg_r, bg_y + bg_h - bg_r, bg_r, 0, Math.PI * 0.5) ctx.arc(bg_x + bg_r, bg_y + bg_h - bg_r, bg_r, Math.PI * 0.5, Math.PI) ctx.clip() ctx.drawImage('../../../images/zbjd/tp1_2.png', bg_x, bg_y, bg_w, bg_h) // 恢复之前保存的绘图上下文 ctx.restore()
转载记录 https://www.cnblogs.com/zhang-jiao/p/12704246.html
标签:CANVAS,bg,avatarurl,微信,ctx,let,PI,Math,图片 来源: https://www.cnblogs.com/zwp06/p/13490199.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。