2014-04-07 52 views
0

我有一个有很多图层的KineticJS舞台。KineticJS:如何将舞台转换为HTML5画布元素?

我发现这个职位:How to copy a kineticjs stage to another canvas

它说,我得到从一层

var canvasElement = layer.getCanvas().getElement(); 

是否也可以到一个阶段导出到画布canvas元素?

+0

有什么用呢? – lavrton

+0

@lavrton我想用这个插件将图像保存在phonegap容器中:https://github.com/devgeeks/Canvas2ImagePlugin因此我需要一个Canvas元素。我如何得到它? – confile

回答

1

在您的使用情况下,你可以这样做:

  1. 在硬盘的方式,你可以创建自定义的canvas元素(或Kinetic.Layer),然后CONVER舞台到图像时,图像画到画布(层),然后将它传递给插件。

  2. 但这种方式也应该工作。我刚刚看到插件源。这非常简单(js部分)。我编辑它:

    stage.toDataURL({ 
        callback : function(data) { 
         var imageData = data.replace(/data:image\/png;base64,/,''); 
         return cordova.exec(function() { 
          // done callback 
         }, function() { 
          // fail callback 
         }, "Canvas2ImagePlugin","saveImageDataToLibrary",[imageData]) 
        } 
    }); 
    
+0

您能否为情况1提供一些代码? – confile

+0

我的例子不工作?你不应该编辑插件源。只需使用此代码,而不是调用插件。 – lavrton