qml Canva 中的fill不起作用

在使用canva绘图的时候,想填充颜色,一般的用法就是使用fill填充,stroke描边。但是我按照教程,使用填充失败。如果有哥们也遇到同样问题的话,我的解决方法给你们参考一下。

原代码

Canvas{
                width:parent.width
                height:parent.height
                onPaint: {
                    var ctx = getContext("2d")
   
                   ctx.strokeStyle = "white"
                   ctx.reset();
                   ctx.beginPath()
                    ctx.beginPath();
                    ctx.moveTo(width*0.3, width*0.3)
                    ctx.lineTo(width/2, height*0.6)
                    ctx.lineTo(width*0.7, width*0.3)


                    ctx.closePath()
                    ctx.fillstyle = "red"
                    ctx.fill()
                    ctx.stroke()
                }
            }

解决方法就是把fill中的颜色改成hex格式

```javascript
Canvas{
                width:parent.width
                height:parent.height
                onPaint: {
                    var ctx = getContext("2d")
                    ctx.fillStyle = "#FF0000";      //设置填充样式
                    ctx.strokeStyle = "#00FF00";        //设置轮廓样式
                    ctx.beginPath();
                    ctx.moveTo(width*0.3, width*0.3)
                    ctx.lineTo(width/2, height*0.6)
                    ctx.lineTo(width*0.7, width*0.3)
                    ctx.closePath(); //虽然我们只绘制了两条线段,但是closePath会closePath,仍然是一个3角形
                    ctx.stroke(); //描边。stroke不会自动closePath()
                    ctx.fill(); //填充
                }
            }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

pupuhetu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值