Linux 中文乱码问题解决
JRE的字体配置文件存放在:
# 显示当前系统中Java字体配置文件名称:
echo $JAVA_HOME/jre/lib/fontconfig.properties 如果这个文件不存在,可以从fontconfig.properties.src复制一个:
# 本文后续的所有命令可能需要root权限,请自行添加sudo
cp $JAVA_HOME/jre/lib/fontconfig.properties.src $JAVA_HOME/jre/lib/fontconfig.properties
# 有些系统中该文件是只读的……
chmod +w $JAVA_HOME/jre/lib/fontconfig.properties
为了避免受当前fontconfig配置文件的影响,备份并移除所有bfc文件:
mkdir $JAVA_HOME/jre/lib/bfcbak/
mv $JAVA_HOME/jre/lib/*.bfc $JAVA_HOME/jre/lib/bfcbak/
准备字体
首先请确定要使用的字体
如:simsun.ttc。
建议将想用的字体文件复制(或创建符号链接)到$JAVA_HOME/jre/lib/fonts,后面的配置会简单一点。
获取字体定义
到存放有字体文件的文件夹,如$JAVA_HOME/jre/lib/fonts,运行下述命令[2][3]:
# Make font scale
mkfontscale
# 寻找文件中含有iso10646的行(对应Unicode类的编码)
grep 10646 fonts.scale
会看到这样的一些行:
simsun.ttc -misc-simsun-medium-r-normal--0-0-0-0-p-0-iso10646-1
请复制相应字体对应的行备用。
修改配置文件
打开配置文件,如$JAVA_HOME/jre/lib/fontconfig.properties,并对其进行如下操作:
在version=1后面加入一行:
allfonts.chinese-arphic1=-misc-simsun-medium-r-normal--0-0-0-0-p-0-iso10646-1
如果原来文件中还有设置allfonts.chinese-arphic1的,就把它们注释掉。
指明字体路径
如果已经把字体复制到$JAVA_HOME/jre/lib/fonts,可以略过此步。否则须在配置文件中加上字体文件的完整路径,以宋体为例:
filename.-misc-simsun-medium-r-normal--0-0-0-0-p-0-iso10646-1=simsun.ttc的完整路径
修改字体搜索序列
在配置文件中查找sequence.allfonts,如果其后的sequence开头的行中有chinese-arphics1,可以略过此步,否则在其后面加入一行:
sequence.fallback=chinese-arphic1
解决字显示不清晰的问题
有时看到英文显示有锯齿,有时看到中文字边缘不清,这可能都与字体反锯齿的设置不当有关。可以在/etc/profile或~/.bashrc末尾加入:[5]
export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=lcd'
其中的lcd也可改为gasp,但效果较好的常是lcd。
Linux 中文乱码问题解决的更多相关文章
- Ubuntu下Eclipse中文乱码问题解决(转)
Ubuntu下Eclipse中文乱码问题解决 把Windows下的工程导入到了Linux下Eclipse中,由于以前的工程代码,都是GBK编码的(Windows下的Eclipse 默认会去读取系统的编 ...
- 180606-Linux下jdk中文乱码问题解决
文章链接:https://liuyueyi.github.io/hexblog/2018/06/06/180606-Linux下jdk中文乱码问题解决/ linux下jdk中文乱码问题解决 之前遇到过 ...
- Arch Linux中文乱码解决
Arch Linux中文乱码解决 1.安装中文字体 pacman -S wqy-zenhei ttf-fireflysung (flash乱码) ---乱码的原因就是缺少中文字体的支持,下载文泉驿 ...
- WingIDE中文乱码问题解决方法
WingIDE中文乱码问题解决方法 安装完WingIDE后,首次运行python脚本时,若脚本中含有UTF-8中文,在Debug I/O输出框中,全部变成了乱码. 这时其实我们设置下WingIDE的编 ...
- ubuntu mysql emma中文乱码问题解决
ubuntu mysql emma中文乱码问题解决 emma默认用apt-get 安装的话,emma是不支持中文的,配置文件或直接修改emma程序源文件(python). apt-get安装emma ...
- Spring MVC3返回JSON数据中文乱码问题解决(转)
Spring MVC3返回JSON数据中文乱码问题解决 查了下网上的一些资料,感觉比较复杂,这里,我这几使用两种很简单的办法解决了中文乱码问题. Spring版本:3.2.2.RELEASE Jack ...
- 【转】asp.net Cookie值中文乱码问题解决方法
来源:脚本之家.百度空间.网易博客 http://www.jb51.net/article/34055.htm http://hi.baidu.com/honfei http://tianminqia ...
- soapUI参数中文乱码问题解决方法 (groovy脚本中文乱码)
soapUI参数中文乱码问题解决方法 可能方案1: 字体不支持中文,将字体修改即可: file-preferences-editor settings-select font 修改字体,改成能显示中文 ...
- oracle中文乱码问题解决
中文乱码问题解决:1.查看服务器端编码select userenv('language') from dual;我实际查到的结果为:AMERICAN_AMERICA.ZHS16GBK2.执行语句 se ...
随机推荐
- MyEclipse 2013优化配置【转】
作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs MyEclipse 2013优化速度方案仍然主要有这么几个方面:去除无需加载的模块.取消冗余的配置.去除不 ...
- 用jQuery编的一个分页小代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- [转载]html中DTD使用小结
原文链接:http://www.jb51.net/web/36856.html DTD 是一套关于标记符的语法规则.它是XML1.0版规格得一部分,是html文件的验证机制,属于html文件组成的一部 ...
- BestCoder Round #61 1002 Game
Problem Description XY is playing a game:there are N pillar in a row,which numbered from 1 to n.Each ...
- U盘安装中标麒麟服务器操作系统 一 (NeoKylin 6.5)
U盘安装中标麒麟服务器操作系统(NeoKylin 6.5) 首先需要下载中标麒麟服务器操作系统的iso镜像.我这里的是NeoKylin Linux A 6.5.iso 因为超过了4GB,百度网盘不支持 ...
- spring和hibernate整合时无法自动建表
在使用spring整合hibernate时候代码如下: <property name="dataSource" ref="dataSource" /> ...
- jQuery调用后台方法
前台: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.as ...
- 在Webstorm/Phpstorm中设置连接FTP,并快速进行文件比较,上传下载,同步等操作
Phpstorm除了能直接打开localhost文件之外,还可以连接FTP,除了完成正常的数据传递任务之外,还可以进行本地文件与服务端文件的异同比较,同一文件自动匹配目录上传,下载,这些功能是平常ID ...
- C# 非托管内存使用时的注意事项
调用Marshal.AllocHGlobal必须调用 Marshal.FreeHGlobal(ptr)来手动释放内存,即使调用GC.Collect();方法也无法释放,导致内存泄露!!
- SQLServer:FUNCTION/CURSOR/PROCEDURE/TRIGGER
一.FUNCTION:在sqlserver2008中有3中自定义函数:标量函数/内联表值函数/多语句表值函数,首先总结下他们语法的异同点:同点:1.创建定义是一样的: ...