exportToPNG

导出甘特图为 PNG 图片

void exportToPNG( [object export] );
exportobject可选,包含导出选项的对象(详见下文)

Example

gantt.exportToPNG();
 
//或
gantt.exportToPNG({
  name: "mygantt.png"
});
 
//或
gantt.exportToPNG({
    name:"mygantt.png",
    header:"<h1>My company</h1>",
    footer:"<h4>Bottom line</h4>",
    locale:"en",
    start:"01-04-2013",
    end:"11-04-2013",
    skin:'terrace',
    data:{ },
    server:"https://myapp.com/myexport/gantt",
    raw:true,
    callback: function(res){
        alert(res.url);
    }
});

Details

该方法属于 export 扩展,因此请确保已启用 export_api 插件。更多信息请参见 导出为 PDF 和 PNG 文章。

对于 8.0 版本之前的 Gantt,需要在页面中引入 https://export.dhtmlx.com/gantt/api.js 脚本以使用在线导出服务,例如:

<script src="codebase/dhtmlxgantt.js"></script>
<script src="https://export.dhtmlx.com/gantt/api.js"></script>

exportToPNG 方法接受一个对象参数,包含多个可选属性:

分片导出大型甘特图

最大导出尺寸限制为 10000×10000 像素。

你可以通过 additional_settings 中的 widthheight 属性调整宽高,但如果两者乘积超过 100000000(10000×10000),导出的 PNG 会被裁剪。

若需导出更大图表,可以通过 additional_settings 中的 slice_archive 选项将图表分片导出并打包成归档:

gantt.exportToPNG({
    server: "https://export.dhtmlx.com/beta/gantt",
    additional_settings:{
        //width: 2000,
        //height: 2000,
        slice_archive: {width: 2000, height: 2000},
        slice_check: true,
    }
});

示例: 导出为 PNG 图片

你可以通过将 slice_archive 设置为带有 widthheight 的对象来指定分片大小:

slice_archive: {width: 2000, height: 2000}

或者直接设置为 true,使用默认的 1000×1000 分片大小:

slice_archive: true

时间限制

导出服务对处理时间有限制。

如果导出时间超过 20 秒,导出将被取消,且会显示以下错误:

Error: Timeout trigger 20 seconds

多个用户同时导出可能会增加处理时间,但每个用户的导出时间是单独计时的。

若需导出大型图表,建议使用独立导出模块。该模块随 CommercialEnterpriseUltimate 许可证免费提供,或可单独购买此处

See also
Back to top