【.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方式,暂时只想到当前方式,如果以后有更简单快捷的方法再做更新

相关推荐
全栈小510 小时前
【C#】.net core 6.0 依赖注入常见问题之一,在构造函数使用的类,都需要注入到容器里,否则会提示如下报错,让DeepSeek找找原因,看看效果
c#·.netcore·依赖注入·deepseek
公子小六5 天前
ASP.NET Core WebApi+React UI开发入门详解
react.js·ui·c#·asp.net·.netcore
工藤新一OL5 天前
.netCore的winform程序如何调用webapi
c#·.net·.netcore·visual studio
江沉晚呤时6 天前
深入解析 C# 开闭原则(OCP):设计可扩展的系统
数据库·c#·系统安全·.netcore
江沉晚呤时8 天前
深入解析外观模式(Facade Pattern)及其应用 C#
java·数据库·windows·后端·microsoft·c#·.netcore
江沉晚呤时8 天前
深入解析代理模式(Proxy Pattern):设计与应用
安全·c#·系统安全·.netcore
小吴同学·10 天前
NET6 WebApi第5讲:中间件(源码理解,俄罗斯套娃怎么来的?);Web 服务器 (Nginx / IIS / Kestrel)、WSL、SSL/TSL
中间件·c#·.net·.netcore·.net core
江沉晚呤时10 天前
深入解析组合模式(Composite Pattern):概念、结构与应用
java·开发语言·后端·c#·.netcore
江沉晚呤时11 天前
精益架构设计:深入理解与实践 C# 中的单一职责原则
java·jvm·算法·log4j·.netcore·net
世界太过浮夸12 天前
.net core集成MQTT服务端
.netcore