SaveAsImage.js 987 字节
Newer Older
L
Toolbox  
lang 已提交
1 2
define(function (require) {

L
Toolbox  
lang 已提交
3 4
    function SaveAsImage (model) {
        this.model = model;
L
Toolbox  
lang 已提交
5 6 7 8
    };

    SaveAsImage.defaultOption = {
        show: true,
L
Toolbox  
lang 已提交
9 10
        icon: 'M4.7,22.9L29.3,45.5L54.7,23.4M4.6,43.6L4.6,58L53.8,58L53.8,43.6\
            M29.2,45.1L29.2,0',
L
Toolbox  
lang 已提交
11 12
        title: '保存为图片',
        type: 'png',
L
Toolbox  
lang 已提交
13 14
        backgroundColor: '#fff',
        name: ''
L
Toolbox  
lang 已提交
15 16 17 18 19
    };

    var proto = SaveAsImage.prototype;

    proto.onclick = function (ecModel, api) {
L
Toolbox  
lang 已提交
20 21 22 23 24 25 26 27 28 29
        var title = ecModel.get('title.0.text') || 'echarts';
        var $a = document.createElement('a');
        var type = this.model.get('type', true) || 'png';
        $a.download = title + '.' + type;
        $a.target = '_blank';
        $a.href = api.getConnectedDataURL({
            type: type,
            backgroundColor: this.model.get('backgroundColor')
        });
        $a.click();
L
Toolbox  
lang 已提交
30 31 32 33 34 35 36 37
    };

    require('../featureManager').register(
        'saveAsImage', SaveAsImage
    );

    return SaveAsImage;
});