解决canvas上fillText填充后用clearRect清除失效,文字重叠问题

最初写的demo:

如下图:

 

文字内容未被清除掉,出现了重叠的问题,尝试了网上说的ctx.save(),ctx.restore(),beginPath()等方法都不好用,

后来经过一番查找,终于解决了:

改写如下:

 

在这里需要主要的点就是fillText的方法里参数表示的真正含义:

 默认情况下,文本基线是位于文字底部,所以调用clearRect()时,y坐标为50-tHeight。

 

posted @ 2024-06-05 16:10  yuwenjing  阅读(165)  评论(0编辑  收藏  举报