实现orgChart生成图片下载功能

想要实现orgChart图表下载功能,可以使用html2canvas库将OrgChart容器转换为图像数据,然后使用a标签的download属性将图像数据保存为本地文件。

html代码:

<span onclick="downloadImg()">下载</span>
<div id="orgChartBlock"></div>

js代码:

<script>
    var orgChartContainer = document.getElementById("orgChartBlock");

    var orgData = {
      name: "John Doe",
      children: [
        { name: "Jane Smith" },
        { name: "Bob Johnson" }
      ]
    };

    var orgChart = new OrgChart(orgChartContainer, {
      data: orgData
    });
    function downloadImg() {
        html2canvas(orgChartContainer).then(function(canvas) {
        var imgData = canvas.toDataURL("image/png");
        var link = document.createElement("a");
        link.href = imgData;
        link.download = "orgChart.png";
        link.click();
      });
    }
</script>

主要的就是在downloadImg方法中的内容,其中orgChartContainer是orgChart画图的容器;如果是图片内容超出容器导致的下载图片不完整的话,可以使用我们自己设置的容器的下一层,也就是orgChart自己生成的<div class="orgChart"></div>这一层;即orgChartContainer可改为:

var orgChartContainer = document.getElementsByClassName('orgChart')[0]

这样下载的图片就是完整的了。

注意:需要使用html2canvas.js来完成该功能,需要额外下载html2canvas!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值