Canvas连续fillText样式不一致

发布于 7 年前作者 xiulan179350 次浏览最后编辑 7 年前来自 ask
WXOPEN Club 内容图片

我连续的两行文本填充,显示正确,导出图片时偶尔出现样式不一致的问题(如下图所示)?fillText每次调用都要重新写样式么?

WXOPEN Club 内容图片

更严重的是有个手机导出图片时两行颜色都不见了(和上图图片背景不一致是由于我们背景随机)

WXOPEN Club 内容图片

但是官方例子就是默认上次的呀

WXOPEN Club 内容图片
10 回复
qiang26
qiang261 楼6 年前

所以,现在你已经解决问题了是吗

guiyinggao
guiyinggao2 楼6 年前

我也遇到这样的问题,执行顺序不一样 安卓随机出现问题,ios好的,官网到现在没有回答这个bug

xia31
xia313 楼6 年前

我最近也遇到了这个问题,有同学解决了么?

试过setTimeout,draw不使用回调函数,原生canvas写法,每次fillText之前重置样式,以及各种save、restore。这些方法可以降低bug的出现频率,但是都没有彻底解决问题。

起初我以为是字号、颜色没有正确赋值,所以filltext之前进行了if判断,但是问题仍然在。

所以我觉得不是setFontsize和fillstyle的问题,应该是canvas执行顺序问题?

ligao
ligao4 楼6 年前

官方呢?

caichao
caichao5 楼6 年前

我也出现这个问题。情况:绘制多个不同样式的文本,使用fillText api会出现样式互相混乱的情况(包括字体颜色,字体大小,居中模式)。。。现在每次在fillText前重新设置样式,一样会出现问题。另外测试发现,直接绘制到canvas上有时候出现文本样式错乱但是通过api导出图片显示正常,有时候canvas绘制正常,导出图片后样式错乱。。。求回复。。

jing77
jing776 楼6 年前

还有个类似的问题。我们支持用户输入信息显示在海报上,可能有多行,下面代码是多行的计算长度然后逐行填充

WXOPEN Club 内容图片

但是有的时候偶尔生成图片导出时,几行文字的大小样式完全不一样。

WXOPEN Club 内容图片 WXOPEN Club 内容图片
tanqiang
tanqiang7 楼6 年前

最后这个问题有解决吗?

jlong
jlong9 楼6 年前

安卓机好像都会这样

fang28
fang2810 楼5 年前

canvas这个我也遇到问题了啊

我在开发插件的过程中用到了draw这个方法,但是draw并没有执行啊

同样的代码在我们小程序里面是好的

但是在插件中就是死也不执行

WXOPEN Club 内容图片

官方的人回答一下呗,卡这好长时间了。。。