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参数就没有了,要删掉



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


相关文章
|
2月前
|
Java
Java开发实现图片URL地址检验,如何编码?
【10月更文挑战第14天】Java开发实现图片URL地址检验,如何编码?
80 4
|
2月前
|
Java
Java开发实现图片地址检验,如果无法找到资源则使用默认图片,如何编码?
【10月更文挑战第14天】Java开发实现图片地址检验,如果无法找到资源则使用默认图片,如何编码?
64 2
|
2月前
|
算法 Java Linux
java制作海报二:java使用Graphics2D 在图片上合成另一个照片,并将照片切割成头像,头像切割成圆形方法详解
这篇文章介绍了如何使用Java的Graphics2D类在图片上合成另一个照片,并将照片切割成圆形头像的方法。
50 1
java制作海报二:java使用Graphics2D 在图片上合成另一个照片,并将照片切割成头像,头像切割成圆形方法详解
|
2月前
|
Java 数据安全/隐私保护
Java ffmpeg 实现视频加文字/图片水印功能
【10月更文挑战第22天】在 Java 中使用 FFmpeg 实现视频加文字或图片水印功能,需先安装 FFmpeg 并添加依赖(如 JavaCV)。通过构建 FFmpeg 命令行参数,使用 `drawtext` 滤镜添加文字水印,或使用 `overlay` 滤镜添加图片水印。示例代码展示了如何使用 JavaCV 实现文字水印。
114 1
|
2月前
|
小程序 前端开发 JavaScript
微信小程序图表制作利器:ECharts组件的使用与技巧
微信小程序图表制作利器:ECharts组件的使用与技巧
65 1
|
2月前
|
前端开发 小程序 Java
java基础:map遍历使用;java使用 Patten 和Matches 进行正则匹配;后端传到前端展示图片三种情况,并保存到手机
这篇文章介绍了Java中Map的遍历方法、使用Pattern和matches进行正则表达式匹配,以及后端向前端传输图片并保存到手机的三种情况。
21 1
|
2月前
|
算法 Java Linux
java制作海报四:java BufferedImage 转 InputStream 上传至OSS。png 图片合成到模板(另一个图片)上时,透明部分变成了黑色
这篇文章主要介绍了如何将Java中的BufferedImage对象转换为InputStream以上传至OSS,并解决了png图片合成时透明部分变黑的问题。
77 1
|
2月前
|
算法 搜索推荐 Java
java 后端 使用 Graphics2D 制作海报,画echarts图,带工具类,各种细节:如头像切割成圆形,文字换行算法(完美实验success),解决画上文字、图片后不清晰问题
这篇文章介绍了如何使用Java后端技术,结合Graphics2D和Echarts等工具,生成包含个性化信息和图表的海报,并提供了详细的代码实现和GitHub项目链接。
124 0
java 后端 使用 Graphics2D 制作海报,画echarts图,带工具类,各种细节:如头像切割成圆形,文字换行算法(完美实验success),解决画上文字、图片后不清晰问题
|
2月前
|
JavaScript
vue中使用echarts绘制双Y轴图表时,刻度没有对齐的两种解决方法
vue中使用echarts绘制双Y轴图表时,刻度没有对齐的两种解决方法
314 0
|
2月前
|
算法 小程序 Java
java制作海报三:获取微信二维码详情,并改变大小,合成到海报(另一张图片)上
这篇文章介绍了如何使用Java获取微信小程序的二维码,并将其调整大小后合成到海报(另一张图片)上。
42 0