Canvas within a scrollable browser window (grab position)

后端 未结 2 1642
忘掉有多难
忘掉有多难 2021-01-07 01:25

I have an issue when drawing in a canvas within a browser window that has a vertical scrollbar.

The figures is at the correct position, and is possible to grab it ar

2条回答
  •  醉酒成梦
    2021-01-07 02:02

    You basically need to modify that code to offset page scroll position

    canvas.fromDocumentToCanvasCoordinate = $.proxy(function(x, y) {
        return new draw2d.geo.Point(
                (x + window.pageXOffset - this.getAbsoluteX() + this.getScrollLeft())*this.zoomFactor,
                (y + window.pageYOffset - this.getAbsoluteY() + this.getScrollTop())*this.zoomFactor);
    },canvas);
    
    canvas.fromCanvasToDocumentCoordinate = $.proxy(function(x,y) {
        return new draw2d.geo.Point(
                ((x*(1/this.zoomFactor)) + this.getAbsoluteX() - this.getScrollLeft() - window.pageXOffset),
                ((y*(1/this.zoomFactor)) + this.getAbsoluteY() - this.getScrollTop() - window.pageYOffset));
    },canvas);
    

提交回复
热议问题