【问题标题】:Possible to Export KineticJS Complete Layer可以导出 KineticJS 完整层
【发布时间】:2013-02-21 15:01:00
【问题描述】:

有人知道是否有办法“导出”整个 KineticJS 层(或组),而不仅仅是可见画布中的部分?

我有一个简单的“图像编辑器”,允许用户在画布中缩放图像,图像可以故意缩放到大于可见的画布舞台区域,从而允许用户将图像部分平移到视图中。问题是当他们来导出图像时(当前使用 toDataURL),只保存了可见画布阶段中的图像部分,其余的图像被丢弃了!

我实际上想保存整个图层,而不仅仅是在可见画布阶段呈现的内容。

【问题讨论】:

    标签: javascript kineticjs


    【解决方案1】:

    嗯,你需要一个临时的解决方法。

    我假设你有一个函数或某些东西可以做 .toDataURL()。

    在执行 toDataURL() 之前,更改舞台大小或比例,然后保存,然后再更改回来。

    例子:

     function save(){
         stage.setScale(newX,newY); //rescale to new values
         stage.setWidth(newWidth);
         stage.setHeight(newHeight);
    
         stage.toDataURL();   // <----- save
    
         stage.setScale(oldX,oldY); //rescale to old values
         stage.setWidth(oldWidth);
         stage.setHeight(oldHeight);
     }
    

    这将调整您的舞台大小,然后将其恢复原状。

    【讨论】:

    • 你明白了。您需要运行stage.draw() 才能正确获取图像,并且不需要来回设置宽度/高度。
    猜你喜欢
    • 2012-12-21
    • 2012-09-23
    • 2012-12-20
    • 2013-06-29
    • 2014-08-06
    • 1970-01-01
    • 2012-10-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多