Is there a way one could zoom and pan on a canvas using KineticJS? I found this library kineticjs-viewport, but just wondering if there is any other way of achieving this because this library seems to be using so many extra libraries and am not sure which ones are absolutely necessary to get the job done.
Alternatively, I am even open to the idea of drawing a rectangle around the region of interest and zooming into that one particular area. Any ideas on how to achieve this? A JSFiddle example would be awesome!
You can simply add
.setDraggable("draggable")to a layer and you will be able to drag it as long as there is an object under the cursor. You could add a large, transparentrectto make everything draggable. The zoom can be achieved by setting the scale of the layer. In this example I’m controlling it though the mousewheel, but it’s simply a function where you pass the amount you want to zoom (positive to zoom in, negative to zoom out). Here is the code:http://jsfiddle.net/zAUYd/