2011-10-07 60 views

回答

2

如果我正確理解你的問題視,最簡單的方法是創建一個非常大的畫布對象(比窗口大),並將其放置在父容器中。設置父容器的尺寸等於所需窗口的尺寸,然後在容器上聲明overflow: hidden;

一旦設置好了,你可以使用類似jQuery的draggable來處理鼠標事件。如果這不起作用,關鍵的想法是您需要修改畫布'position'屬性,或者調整margins以模擬窗口內畫布周圍的平移。

這種方法當然是用於有限的畫布尺寸。如果你想提供一個無限的工作區域,你最好修改你的畫布的context.translate屬性。然而,我認爲這對fabric.js不會有好的表現。

+0

我覺得這應該是Fabric.js庫的一部分。例如:https://github.com/rstgroup/fabricjs-viewport。 – Axl