主頁 > 知識庫 > 微信小程序canvas實現(xiàn)水平、垂直居中效果

微信小程序canvas實現(xiàn)水平、垂直居中效果

熱門標(biāo)簽:使用U盤裝系統(tǒng) 阿里云 美圖手機 百度競價點擊價格的計算公式 硅谷的囚徒呼叫中心 網(wǎng)站建設(shè) 智能手機 檢查注冊表項

最近做一個刮刮卡,需要將文字在canvas中水平、垂直居中

wxml

<canvas type='2d' id="myCanvas" width="300" height="150"  style="background:yellow;" \&;

 

使用canvas2d構(gòu)建畫布

藍色線為水平中線

紅色線為垂直中線

文本設(shè)置方法

fillText 方法為canvas設(shè)置文本方法,使用如下所示

ctx.fillText('文本內(nèi)容', x, y)

x為橫軸坐標(biāo)

y為縱軸坐標(biāo)

上例將文本內(nèi)容設(shè)置在canvas畫布的坐標(biāo)位置上,跳脫web的開發(fā)思維,我們可以認為X點相對于文本有左,中,右三種布局,Y點相對于文本有上、中、下的布局,這樣就很好理解文本在canvas上是如何繪制了

水平居中

找到X軸的中點位置,如上圖,在150px這個點上

注意X點相對于文本的位置

ctx.fillStyle = '#aaa'
ctx.font = 'bold 30px "Gill Sans Extrabold"'
ctx.textAlign = 'center'
ctx.fillText('文本內(nèi)容', 150, 0)

圖示只作說明

垂直居中

找到X軸的中點位置,如上圖,在75px這個點上

注意Y點相對于文本的位置

 

ctx.fillStyle = '#aaa'
ctx.font = 'bold 30px "Gill Sans Extrabold"'
ctx.textBaseline = 'middle'
ctx.fillText('文本內(nèi)容', 0, 75)

圖示只作說明

完美居中

ctx.fillStyle = '#aaa'
ctx.font = 'bold 30px "Gill Sans Extrabold"'
ctx.textAlign = 'center'
ctx.textBaseline = 'middle'
ctx.fillText(opts.maskerTitle, left, top)

總結(jié)

以上所述是小編給大家介紹的小程序中canvas實現(xiàn)水平、垂直居中效果,希望對大家有所幫助!

標(biāo)簽:煙臺 黃山 湘潭 賀州 山南 通遼 懷化 湖北

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《微信小程序canvas實現(xiàn)水平、垂直居中效果》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266