Javascript event.point不使用paper.js调整大小

Javascript event.point不使用paper.js调整大小,javascript,paperjs,Javascript,Paperjs,这将拖动我的矩形路径。如果窗口没有调整大小,它就可以正常工作 function onMouseDrag(event) { MyRectanglePath.position = event.point; } 这会将我的游戏调整为一个正方形,在浏览器窗口的100%宽度或100%长度 function OnResizeCalled() { var gameWidth = window.innerWidth; var gameHeight =

这将拖动我的矩形路径。如果窗口没有调整大小,它就可以正常工作

function onMouseDrag(event) {
  MyRectanglePath.position = event.point;
}
这会将我的游戏调整为一个正方形,在浏览器窗口的100%宽度或100%长度

    function OnResizeCalled() {
            var gameWidth = window.innerWidth;
            var gameHeight = window.innerHeight;
            var scaleToFitX = gameWidth / 640;
            var scaleToFitY = gameHeight / 640;

            var currentScreenRatio = gameWidth / gameHeight;
            var optimalRatio = Math.min(scaleToFitX, scaleToFitY);
            canvas.style.width = 640 * optimalRatio + "px";
            canvas.style.height = 640 * optimalRatio + "px";
    }

// Resize
window.addEventListener("resize", OnResizeCalled, false);
OnResizeCalled();

我的浏览器窗口越小,拖动矩形时,矩形离鼠标越远。如何使event.point与画布的其余部分一起缩放?

Paper.js不支持手动调整画布大小,因为这样会放大像素并导致各种内部问题。它还会干扰视网膜屏幕上的HiDPI处理

但您可以使用以下方法调整画布的大小:


paper.view.viewSize=[宽度、高度];


我希望这有帮助

Paper.js不支持手动调整画布大小,因为这样会放大像素并导致各种内部问题。它还会干扰视网膜屏幕上的HiDPI处理

但您可以使用以下方法调整画布的大小:


paper.view.viewSize=[宽度、高度];


我希望这有帮助

嗯,正如Jürg Lehni先生之前所说,Paper.js的设计不支持手动调整画布大小。当paper.view.setViewSize()将画布扩展/缩小到该大小时


如果要缩放画布中的内容(例如路径),必须使用.transform()将转换应用于每个项目(使用右矩阵)

嗯,正如Jürg Lehni先生之前所说,Paper.js的设计不支持手动调整画布大小。当paper.view.setViewSize()将画布扩展/缩小到该大小时


如果要缩放画布中的内容(例如路径),必须使用.transform()将转换应用于每个项目(使用右矩阵)

非常感谢你的支持,Jürg Lehni先生!这是否意味着我应该删除“canvas.style.width=…”和“canvas.style.height=…”行?我想为国际象棋应用程序制作一个与屏幕全宽或全高相同的方框。有关如何使Paper.js画布自动调整为全窗口大小的说明,请参见此处:真棒。我去看看。顺便说一下,我向你的paperjs提交了一个请求。伟大的工作,使文书!是的,我看到了,谢谢!你介意投票/接受我的回答吗?不知道它是如何工作的,但我认为这就是Stackoverflow的全部内容。这里仍然是新的…最简单的方法是通过添加“resize”属性将画布标记为正在调整大小。看看随库提供的示例,它们都是这样做的,并随浏览器一起扩展,而不添加任何代码。在内部,他们使用#viewSize和一个调整大小处理程序来实现这一点:非常感谢您的支持,Jürg Lehni先生!这是否意味着我应该删除“canvas.style.width=…”和“canvas.style.height=…”行?我想为国际象棋应用程序制作一个与屏幕全宽或全高相同的方框。有关如何使Paper.js画布自动调整为全窗口大小的说明,请参见此处:真棒。我去看看。顺便说一下,我向你的paperjs提交了一个请求。伟大的工作,使文书!是的,我看到了,谢谢!你介意投票/接受我的回答吗?不知道它是如何工作的,但我认为这就是Stackoverflow的全部内容。这里仍然是新的…最简单的方法是通过添加“resize”属性将画布标记为正在调整大小。看看随库提供的示例,它们都是这样做的,并随浏览器一起扩展,而不添加任何代码。在内部,它们使用#viewSize和一个调整大小处理程序来实现这一点: