收藏
回答

canvas画布ctx.isPointInPath()使用?

selectSeat:function(e){
      const clickX = e.detail.x
      const clickY = e.detail.y
      
     const ctx = this.context


     ctx.beginPath()
     ctx.rect(200,0,100,100)
     ctx.closePath()
     ctx.stroke()
     
     console.log(ctx.isPointInPath(clickX,clickY),clickX,clickY)


    }

回答关注问题邀请回答
收藏

3 个回答

  • Eric Huang
    Eric Huang
    2020-11-04

    应该是要转换到逻辑像素再做检测,乘以个 dpr 看看

    2020-11-04
    有用 2
    回复 3
    • 陈ban
      陈ban
      2020-11-07
      谢谢,解决了
      2020-11-07
      回复
    • Atuxe
      Atuxe
      2022-03-05
      正解。
      2022-03-05
      回复
    • 铅球
      铅球
      2023-10-07
      我用安卓没问题,ios在小游戏环境调isPointInPath/isPointInStroke均返回undefined
      2023-10-07
      回复
  • 游方
    游方
    2022-08-19

    是不是有些安卓机有兼容问题,拿到的 都是false,ios没遇到,安卓有些机器没问题

    2022-08-19
    有用
    回复
  • 同步
    同步
    2020-11-04

    isPointInPath() 方法返回 true,如果指定的点位于当前路径中;否则返回 false。

    2020-11-04
    有用
    回复 1
    • 陈ban
      陈ban
      2020-11-07
      谢谢
      2020-11-07
      回复
登录 后发表内容
问题标签