使用html2image-0.9.jar生成图片。 
在本地window系统正常,放到服务器linux系统时候中文乱码问题。英文可以,中文乱码应该就是字体问题了。

一、首先需要在linux安装字体,simsun.ttc  simsun.ttf simsunb.ttf

1、新建目录

/user/share/fonts/chinese

2、上传字体,在/user/share/fonts/chinese目录

simsun.ttc  simsun.ttf

3、执行,进入/user/share/fonts/chinese目录

chmod 777 simsun.ttc

chmod 777 simsun.ttf

fc-cache -fv

4、查看安装的字体

fc-list

注意:

如果提示 mkfontscale: command not found,需自行安装 # yum install mkfontscale

如果提示 fc-cache: command not found,则需要安装# yum install fontconfig

安装完字体以后,下面就是最重要的步骤了

二、CP simsun.ttc  simsun.ttf 字体到JDK的jre/lib/fonts/fallback 目录下

首先来说说产生这个问题的原因。java程序启动的时候会去在$JAVA_HOME/jre/lib/fonts目录下寻找相应的字体来显示。由于 JDK默认没有中文字体,所以我们需要手工的来设置一下,让java应用程序能够找到相应的中文字体。这样就能够解决问题了。

JDK中文处理办法基本步骤如下:

1)cd $JAVA_HOME/jre/lib/fonts

2)mkdir fallback

3)cp xxx.ttf fallback #xxx.ttf代表你想要的中文字体文件

4)cd fallback

5)mkfontscale

6)mkfontdir

这里最主要的就是fallback这个目录,这个目录必须建,原因如下:

JFreeChart默认字体有"Arial","Dialog", "Dialog", "SansSerif", "Tahoma"    而需要用到是宋体等中文字体时,JVM找不到相关字体文件,所以会显示乱码,解决方法如下:

方法一:

复制所使用的中文字体文件(如simsun.ttc)到此目录中(如果没有fallback目录,请手动建立。)
$JAVA_HOME/jre/lib/fonts/fallback

为何要建立fallback目录参照sequence.fallback的说明:

If the runtime environment has a directory lib/fonts/fallbackand this directory contains valid TrueType or Type 1 fonts, theruntime automatically adds these fonts as fallback fonts for 2Drendering. On Windows, if there is a system EUDC (End User DefinedCharacters) font registered with Windows, the runtime automaticallyadds this font as well as a fallback font for 2Drendering

方法二:

将Linux系统的字体目录作为JDK下面的一个字体目录连接。 ln -s $FONTS_PATH/FONT_DIR$JAVA_HOME/jre/lib/fonts/fallback

字体下载地址:

https://download.csdn.net/download/a7657z/10122506

HtmlImageGenerator字体乱码问题解决、html2image放linux上乱码问题解决的更多相关文章

  1. HtmlImageGenerator乱码问题解决、html2image放linux上乱码问题解决

    使用html2image-0.9.jar生成图片. 在本地window系统正常,放到服务器linux系统时候中文乱码问题.英文可以,中文乱码应该就是字体问题了. 一.首先需要在linux安装字体,si ...

  2. linux 环境下安装oracle11g方法及安装过程中遇上的问题解决方法

     Oralce安装教程 1.先安装需要的依赖包 找到哪个没有安装,直接yum install XX,直到所有的都安装完成.注意,可能一个包安装了,再次执行检查,还是提示没有安装,那么就不需要管他们了, ...

  3. 解决Linux终端乱码的两则例子

    现象描述 我们先来说一下出现乱码的原因. 例子 先举个实际的例子,我们一般通过ssh远程到服务器上进行操作.当在终端上执行一些有输出的任务时,有可能会遇到乱码,特别是输出中有中文时. 比如,我登陆上o ...

  4. iconv内容,convmv文件名,unix2dos,dos2unix文件格式转换,od/cut/wc/dd/diff/uniq/nice/du等命令,linux文件名乱码,文件名,文件内容,vim编码设置

    1.enconv文件名编码转换,比如要将一个GBK编码的文件转换成UTF-8编码,操作如下 enconv -L zh_CN -x UTF-8 filename enconv -L GB2312 -x  ...

  5. 数据库系统入门 | Oracle Linux上部署Oracle 11g服务,并实现SSH远程登录管理

    文章目录 写在前面 一.实验内容 二.实验前期准备 1.软件目录 2.准备一些配置文件.脚本文件 三.实验方案(具体步骤) (一)在虚拟机上安装Oracle Linux (二)在Linux上安装Ora ...

  6. Linux中文乱码问题终极解决方法

    方法一: 修改/root/.bash_profile文件,增加export LANG=zh_CN.GB18030该文件在用户目录下,对于其他用户,也必须相应修改该文件. 使用该方法时putty能显示中 ...

  7. Linux rar乱码

    大家都知道,Linux下的中文乱码是一个很烦的事情,在这里我叫大家如何解决这个问题. rar乱码 ubunut下打开rar包,如果里面有中文就会显示乱码,其实就觉这个问题最简单了,只要把进入新立得,搜 ...

  8. linux.backspace乱码(转)

    42 linux.backspace乱码 linux环境sqlplus中使用backspace键出现乱码的解决方法2008-04-30 16:32 在linux环境下使用sqlplus,在回删(bac ...

  9. 第二章 在Linux上部署.net core

    项目目标部署环境:CentOS 7+ 项目技术点:.netcore2.0 + Autofac +webAPI + NHibernate5.1 + mysql5.6 + nginx 开源地址:https ...

随机推荐

  1. 撩课-Web大前端每天5道面试题-Day25

    1.web前端开发,如何提高页面性能优化? 内容方面: .减少 HTTP 请求 (Make Fewer HTTP Requests) .减少 DOM 元素数量 (Reduce the Number o ...

  2. 南阳nyoj 509 因子和阶乘

    因子和阶乘 时间限制:1000 ms  |  内存限制:65535 KB 难度:2  http://acm.nyist.net/JudgeOnline/problem.php?pid=509 描述 给 ...

  3. zookeeper 选举

    选举概述: 1.启动时期的选举 所有的服务器状态为 LOOKING. 1.1.每个Server 会投出一票(投票规则为:SID.ZXID ,即 服务器ID 和 最大事务ID). 1.2.处理选票 (A ...

  4. js小练习

    1.题目:某班的成绩出来了,现在老师要把班级的成绩打印出来. 效果如下:xxx年xx月x日  星期x--班级总分为:81 格式要求:1.显示打印的日期.格式为类似“xxxx年xx月xx日 星期x”的当 ...

  5. HTML之列表

    列表有三种类型: 有序列表:列表项使用数字来标记 无序列表:列表项使用粗体圆点(典型的小黑圆圈)进行标记. 自定义列表:自定义列表以 <dl> 标签开始.每个自定义列表项以 <dt& ...

  6. 【代码笔记】iOS-ios7 StatusBar

    代码: RootViewController.m #import "RootViewController.h" @interface RootViewController () @ ...

  7. Cannot perform conversion to XML from legacy HTML:

    错误信息:Cannot perform conversion to XML from legacy HTML: The nekoHTML library is not in classpath. ne ...

  8. dynamics 365 AI 解决方案 —— 介绍

    Digital transformation has been reshaping our world and artificial intelligence (AI) is one of the n ...

  9. frame shiro 认证示例及原理简述

    shiro 认证流程 1.创建一个 javaSE 的maven项目(quickstart),并添加依赖 <dependency> <groupId>junit</grou ...

  10. 深入浅出React的一些细节——State

    (来源于: https://facebook.github.io/react/docs/state-and-lifecycle.html 翻译by:@TimRChen) Using State Cor ...