为了账号安全,请及时绑定邮箱和手机立即绑定

canvas星空效果,背景图片改为透明(255,255,255,0)后,星星拖的很长怎么办?

canvas星空效果,背景图片改为透明(255,255,255,0)后,星星拖的很长怎么办?

红颜莎娜 2018-07-22 13:30:01
问题描述有一个需求是把这个星空特效背景加一张图片。但是drawImage方法不能像backgroud那样设置图片的位置。思路就只剩下把星空背景改为透明的。但是这个背景我设置为其他颜色都是好好的,一旦设置为透明的就坏了。哪里的原因,怎么办,求解答。问题出现的环境背景及自己尝试过哪些方法canvas
查看完整描述

1 回答

?
慕标琳琳

TA贡献1830条经验 获得超9个赞

drawStars函数里面的if (wap == 0)之前添加下面一行代码:

c.clearRect(0, 0, canvas.width, canvas.height)

canvas在画之前是不会清除已经存在在画布上的内容的,如果没有手动清除canvas只会在原先的画布上接着画。
当设置的颜色不透明的时候,因为把canvas画布整个图上了一层不透明的颜色,所以画布上原先的东西被盖在下面了,所以看不见,但并不是清除了,所以当设置一个不透明的颜色的时候,原先的内容就显示出来了,也就是所有移动位置上的星星都会显示出来,所以效果就是拉长的线。


查看完整回答
反对 回复 2018-07-29
  • 1 回答
  • 0 关注
  • 2095 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信