JIT - 将Spacetree保存为图像

时间:2012-06-29 18:24:11

标签: javascript canvas infovis thejit space-tree

我正在使用JavaScript InfoVis Toolkit(http://thejit.org/),我正在尝试将我输出的Spacetree保存到图像中。 Spacetree输出到画布。这个问题让我非常沮丧。我试过了:

  1. 在新窗口中打开画布
  2. 在新窗口中打开画布所在的div
  3. 使用Canvas2Image(http://www.nihilogic.dk/labs/canvas2image/)
  4. 这是我当前的Javascript方法(绑定到按钮):

        function saveImage(div_id) {
    
            var canvas = document.getElementById("tree-canvas");
            Canvas2Image.saveAsJPEG(canvas);
        }
    

    然而,每次(我的意思是对于所有3个选项都是这样)我得到了我的节点但不是分配给节点的标签。这令人沮丧!!

    有没有人碰到这个?这必须是以前遇到过的问题..

1 个答案:

答案 0 :(得分:4)

对于将来遇到这种情况的任何人,我通过以下方式解决了这个问题:

将Label类型更改为“Native”:

            Label: {
                type: 'Native',
                color: '#000000'
            },

我还抓住了画布ID(顺便说一下HTML 5)并将图像放到一个新窗口中:

    function saveImage() {

        var canvas = document.getElementById("canvas");
        window.open(canvas.toDataURL("image/jpeg"));
    }