Windows server中java使用phantomjs+echarts-convert生成图表,图片中的中文乱码 解决办法

简介: 我这里是用java的 Runtime.getRuntime().exec 调用命令行执行phantomjs加echarts-convert生成柱状图的命令,本来在本地处理的挺成功的,放到服务器上后生成的图片中的中文都是乱码,百度到的基本上都是linux上乱码,让安装字体。

我这里是用java的 Runtime.getRuntime().exec 调用命令行执行phantomjs加echarts-convert生成柱状图的命令,本来在本地处理的挺成功的,放到服务器上后生成的图片中的中文都是乱码,百度到的基本上都是linux上乱码,让安装字体。但我这个服务器是Windows server,我也试了把我本地的字体都复制过去安装了一遍,但是没有用。


然后我在服务器上用cmd手动执行生成图片的命令,是没有乱码的,所以只能是程序的问题。


猜测应该是echart-convert.js里面读取json文件的时候乱码了,在里面加了个输出语句,再执行命令,果然输出的是乱码,但没搞懂为什么手动执行命令即使是乱码,生成的图片还是正常的,程序调用生成的图片就是乱码


那就改一下这个js里面读取文件的方法,,,没找到怎么用js读取文件,所以就在Java里面读取js然后替换生成图表的数据,输出到一个新的js,使用这个新的js去执行命令生成图片


下图这个地方注释掉读取文件的代码,给这个options赋一个自己定义的值,在java代码里面replace就可以了



java代码是这样的,注意 之前的-infile参数就没有了,要删掉



然后就,成功了,没有乱码了  


相关文章
|
1月前
|
Java
java通过commons-fileupload实现多张图片的上传(servlet)
java通过commons-fileupload实现多张图片的上传(servlet)
23 2
|
1月前
|
Java 开发工具 Windows
Windows环境下面启动jar包,输出的日志出现乱码的解决办法
Windows环境下面启动jar包,输出的日志出现乱码的解决办法
|
1月前
|
存储 Java 计算机视觉
Java代码居然可以做出如此高级的图片编辑系统
Java代码居然可以做出如此高级的图片编辑系统
29 0
|
2月前
|
数据可视化
echarts图表坐标轴数据标签添加下划线
echarts图表坐标轴数据标签添加下划线
50 0
|
2月前
|
Java Unix 应用服务中间件
使用java service wrapper把windows flume做成服务
使用java service wrapper把windows flume做成服务
|
1月前
|
前端开发 Java
java通过commons-fileupload实现多张图片的上传(jsp页面)
java通过commons-fileupload实现多张图片的上传(jsp页面)
16 2
|
2月前
|
Java
IDEA Error:java: Compilation failed: internal java compiler error 解决办法
IDEA Error:java: Compilation failed: internal java compiler error 解决办法
|
1天前
|
前端开发 JavaScript 定位技术
Docusaurus框架——react+antd+echarts自定义mdx生成图表代码解释文档
Docusaurus框架——react+antd+echarts自定义mdx生成图表代码解释文档
9 0
|
2天前
|
API
vue2、vue3分别配置echarts多图表的同步缩放(一)
vue2、vue3分别配置echarts多图表的同步缩放
8 0