html2canvas图表没有,将html2Canvas与HighCharts一起使用

Highcharts使用svg绘制图表.您将需要使用canvg库将此svg绘制到临时画布,然后在使用html2canvas截取屏幕截图后删除该画布.

试试这个:

//find all svg elements in $container

//$container is the jQuery object of the div that you need to convert to image. This div may contain highcharts along with other child divs, etc

var svgElements= $container.find('svg');

//replace all svgs with a temp canvas

svgElements.each(function () {

var canvas, xml;

canvas = document.createElement("canvas");

canvas.className = "screenShotTempCanvas";

//convert SVG into a XML string

xml = (new XMLSerializer()).serializeToString(this);

// Removing the name space as IE throws an error

xml = xml.replace(/xmlns=\"http:\/\/www\.w3\.org\/2000\/svg\"/, '');

//draw the SVG onto a canvas

canvg(canvas, xml);

$(canvas).insertAfter(this);

//hide the SVG element

this.className = "tempHide";

$(this).hide();

});

//...

//HERE GOES YOUR CODE FOR HTML2CANVAS SCREENSHOT

//...

//After your image is generated revert the temporary changes

$container.find('.screenShotTempCanvas').remove();

$container.find('.tempHide').show().removeClass('tempHide');

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值