【.net/.net core】后台生成echarts图片解决方案及.net core html转word方法

工具环境下载:

EChartsConvert:https://gitee.com/saintlee/echartsconvert

EChartsConvert为生成echarts图片的服务端,用于接收参数和生成echarts图表图片BASE64编码

PhantomJS:Download PhantomJS

PhantomJS用来发布EChartsConvert服务,下载链接在EChartsConvert项目的README.MD文件中

按照指示步骤设置环境变量

服务发布:

echarts-convert.js同级目录下

运行命令phantomjs echarts-convert.js -s -p xxxx

xxxx表示发布端口,默认端口为9090

发布成功示例:出现echarts-convert server start success,pid为进程号

api调用:参数内容

复制代码
{"series":[{"type":"pie","data":[{"value":335,"name":"直接访问"},{"value":310,"name":"邮件营销"}]}],"backgroundColor":"#2c343c"}

使用get方式在query中直接传参,调用成功返回代码code为1,data为图片base64编码数据

编码转换为图片:

注:这边使用GET请求时修改了echartsconvert-master/echarts-convert.js中的代码

具体使用场景根据自身情况调整服务请求方式和参数编码方式,对应需要修改echartsconvert-master/echarts-convert.js中的参数解码方式和参数接收方式

附:.net core html页面转换为word

nuget安装包:

转换代码:

cs 复制代码
using Spire.Doc;//包引用

//创建 Document 对象

Document document = new Document();
string dir = Directory.GetCurrentDirectory();
//加载HTML文件
document.LoadFromFile(dir+ "\\Resource\\test.html");
//将HTML文件转为Word并保存
document.SaveToFile(dir + "\\Resource\\HtmltoWord.docx", FileFormat.Docx2013);

只进行了简单测试,html原生的dom元素都可直接转换,但echarts图表不可直接转化,所以采用先将echarts图表转换为图片,然后生成报告html页面,再将页面转换为word方式,暂时只想到当前方式,如果以后有更简单快捷的方法再做更新

相关推荐
武藤一雄2 天前
C# 异步回调与等待机制
前端·microsoft·设计模式·微软·c#·.netcore
武藤一雄3 天前
C#万字详解 栈与托管堆 的底层逻辑
windows·microsoft·c#·.net·.netcore
武藤一雄3 天前
深入拆解.NET内存管理:从GC机制到高性能内存优化
windows·microsoft·c#·.net·wpf·.netcore·内存管理
武藤一雄5 天前
WPF/C# 应对消息洪峰与数据抖动的 8 种“抗压”策略
windows·微软·c#·wpf·.netcore·防抖·鲁棒性
武藤一雄6 天前
C# 竟态条件
microsoft·c#·.net·.netcore
武藤一雄6 天前
WPF深度解析Behavior
windows·c#·.net·wpf·.netcore
不超限6 天前
.net core项目部署至信创环境
.netcore
程序0076 天前
在线五子棋小游戏(.NET Core+FreeSql+WebSocket ) html+js
websocket·html·.netcore
武藤一雄7 天前
C# 设计模式大全(第一弹|7种)
microsoft·设计模式·微软·c#·.net·.netcore
滴滴答答哒7 天前
.netcore集成CAP事件总线,消息队列
.netcore