使用Echarts和JSPDF图表到PDF
我已经创建了一个带有echarts的图形,并希望使用JSPDF将其包括在PDF中。
一世 成立 这样做的一种方法可能是使用画布,将图形传输到图像,
最后将图像包括在PDF中。但是,我无法将图形传输到图像。这是代码:
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <title>Balken</title> <script src="echarts.js"></script> <link rel="stylesheet" href="style.css" /> </head> <body> <script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.3.4/jspdf.debug.js"></script> <div id="body"> <div id="chart"></div> </div> <!-- prepare a DOM container with width and height --> <div id="main" style="width: 750px; height: 500px"></div> <script type="text/javascript"> // based on prepared DOM, initialize echarts instance var myChart = echarts.init(document.getElementById('main')); // specify chart configuration item and data var option = { color: ['#3398DB'], tooltip: { trigger: 'axis', axisPointer: { type: 'shadow' } }, grid: { left: '3%', right: '4%', bottom: '3%', containLabel: true }, xAxis: [ { type: 'category', data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'], axisTick: { alignWithLabel: true } } ], yAxis: [ { type: 'value' } ], series: [ { name: 'Salami', type: 'bar', barWidth: '60%', data: [10, 52, 200, 334, 390, 330, 220] } ] }; // use configuration item and data specified to show chart myChart.setOption(option); var canvas = document.getElementById('main'); var dataURL = canvas.toDataURL(); //console.log(dataURL); $('#exportButton').click(function () { var pdf = new jsPDF(); pdf.addImage(dataURL, 'JPEG', 0, 0); pdf.save('download.pdf'); }); </script> <button id="exportButton" type="button">Export as PDF</button> </body> </html>
有什么建议么?
看答案:
我也需要这个商业产品,所以直到找到解决方案之前,我才放弃。
您不能使用图表的ID来获取图像的URL,而需要搜索画布。
($('canvas')[0]).toDataURL("image/png");
请注意,“ [0]”表示,如果您有更多图表,它将为您的第一个画布提供:
($('canvas')[0]).toDataURL("image/png"); ($('canvas')[1]).toDataURL("image/png"); ($('canvas')[2]).toDataURL("image/png");
在线测试看效果:https://raw.githack.com/MrRio/jsPDF/master/index.html#
echarts 字符云、词云图 echarts-wordcloud
posted on 2024-03-12 14:45 andydaopeng 阅读(112) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
2013-03-12 Mysql存储过程