时间:2021-05-08
最近做一个刮刮卡,需要将文字在canvas中水平、垂直居中
wxml
<canvas type='2d' id="myCanvas" width="300" height="150" style="background:yellow;" \>使用canvas2d构建画布
蓝色线为水平中线
红色线为垂直中线
文本设置方法
fillText 方法为canvas设置文本方法,使用如下所示
ctx.fillText('文本内容', x, y)x为横轴坐标
y为纵轴坐标
上例将文本内容设置在canvas画布的坐标位置上,跳脱web的开发思维,我们可以认为X点相对于文本有左,中,右三种布局,Y点相对于文本有上、中、下的布局,这样就很好理解文本在canvas上是如何绘制了
水平居中
找到X轴的中点位置,如上图,在150px这个点上
注意X点相对于文本的位置
ctx.fillStyle = '#aaa'ctx.font = 'bold 30px "Gill Sans Extrabold"'ctx.textAlign = 'center'ctx.fillText('文本内容', 150, 0)图示只作说明
垂直居中
找到X轴的中点位置,如上图,在75px这个点上
注意Y点相对于文本的位置
ctx.fillStyle = '#aaa'ctx.font = 'bold 30px "Gill Sans Extrabold"'ctx.textBaseline = 'middle'ctx.fillText('文本内容', 0, 75)图示只作说明
完美居中
ctx.fillStyle = '#aaa'ctx.font = 'bold 30px "Gill Sans Extrabold"'ctx.textAlign = 'center'ctx.textBaseline = 'middle'ctx.fillText(opts.maskerTitle, left, top)总结
以上所述是小编给大家介绍的小程序中canvas实现水平、垂直居中效果,希望对大家有所帮助!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
最终实现效果为实现行内元素的水平、垂直居中对齐,效果图如下:接下来为实现代码:复制代码代码如下:利用vertical-align实现图片垂直居中对齐#conte
先看下微信小程序canvas拖拽功能组件地址github.com/jasondu/wx-…readme近期补上实现效果如何实现使用canvas使用movable
在微信小程序项目中,开发模块涉及到手写签名功能,微信小程序canvas闪亮登场前言微信小程序canvas实现签名功能核心内容简介:(1)签名实现,开始,移动,结
本文实例讲述了微信小程序基于canvas渐变实现的彩虹效果。分享给大家供大家参考,具体如下:微信小程序提供了两种渐变的方式:createLinearGradie
源于前段时候微信小程序最初火爆公测时段,把以前用Canvas实现的大转盘抽奖移植成微信小程序,无奈当时小程序对Canvas支持不够完善,只好降低用CSS3实现。