toPNG

webix.toPNG(id, name)

webix.toPNG helper.

Please look into the linked official documentation.

References

helpers
cdn(), require(), toNode().

External references

Official documentation page.

Code

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
webix.toPNG = function(id, name){
    var defer = webix.promise.defer();
    webix.require(webix.cdn + "/extras/html2canvas.min.js", function(){
        var view = webix.$$(id);
        if (view && view.$exportView)
            view = view.$exportView({});
        var node = view ? view.$view : webix.toNode(id);
        var filename = (name||"data")+".png";

        window.html2canvas(node).then(function(canvas) {
            var data = canvas.msToBlob?canvas.msToBlob():canvas.toDataURL("image/png");
            webix.html.download(data, filename);
            canvas.remove();
            defer.resolve();
        });
    });
    return defer;
};