Используйте проект phantomjs.org для генерации изображений ваших диаграмм на сервере.
Это позволяет загружать любую HTML-страницу по URL в безголовый компьютер WebKit и отображать ее в PNG.
Кроме того, вы можете получить окончательный размер вашей страницы, а затем разрезать его на части, задав циклический регион клипов.
Например, следующий пример экспортирует несколько диаграмм со страницы в отдельные изображения PNG в файловой системе. После этого вы можете собрать свою новую веб-страницу или упаковать их в PDF и предоставить ссылку на скачивание своему пользователю. Это будет самое надежное и стабильное решение для печати для веб-приложений.
var page = require('webpage').create();
page.viewportSize = { width: 1280, height : 1024 };
page.open('http://chart.html', function () {
page.clipRect = page.evaluate(function () {
var chart = jQuery("#chart1");
return { top: chart.offset().top, left: chart.offset().left, width: chart.outerWidth(), height: chart.outerHeight() };
});
page.render('chart1.png');
page.clipRect = page.evaluate(function () {
var chart = jQuery("#chart2");
return { top: chart.offset().top, left: chart.offset().left, width: chart.outerWidth(), height: chart.outerHeight() };
});
page.render('chart2.png');
page.clipRect = page.evaluate(function () {
var chart = jQuery("#chart3");
return { top: chart.offset().top, left: chart.offset().left, width: chart.outerWidth(), height: chart.outerHeight() };
});
page.render('chart3.png');
phantom.exit();
});