中国のフォントがインストールされていないため、JavaがCentos7で画像の透かしを生成すると、中国語の文字が文字化けします。
以下は、Centos7に基づく中国語フォントを手動でインストールするための詳細な手順です。テスト環境または実稼働環境にさらにサーバーがある場合は、自動化された操作および保守ツールを使用することをお勧めします。
1# フォントライブラリをインストールする
2 $ yum -y install fontconfig
34# 中国語のフォントがあるかどうかを確認します
5 $ fc-list :lang=zh
67# 中国のフォントカタログを作成する
8 $ mkdir /usr/share/fonts/chinese
910# WindowsのC:\Windows\Fontsディレクトリで対応するフォントを見つけてChineseディレクトリにコピーします。ここでは、Songtiを例として取り上げます。
11 $ scp simsun.ttc simsunb.ttf root@xxxxx:/usr/share/fonts/chinese
1213# 中国語のフォントがあるかどうかを確認します
14 $ fc-list :lang=zh
15 /usr/share/fonts/chinese/simsun.ttc: SimSun,ソンティ:style=Regular,従来型
16 /usr/share/fonts/chinese/simsun.ttc: NSimSun,新曲:style=Regular,従来型
通常、テスト環境または実稼働環境には多くのサーバーがあります。以下は、Ansbileを使用して中国語のフォントをバッチでインストールする方法を示しています。
1# アンスビルプレイブックの実行
2 $ ansible-playbook fonts.yml
34# すべてのサーバーが有効であることを確認します
5 $ ansible all -m shell -a "fc-list :lang=zh"
6 sever01 | SUCCESS | rc=0>>7/usr/share/fonts/chinese/simsun.ttc: SimSun,ソンティ:style=Regular,従来型
8 /usr/share/fonts/chinese/simsun.ttc: NSimSun,新曲:style=Regular,従来型
9 sever02 | SUCCESS | rc=0>>10/usr/share/fonts/chinese/simsun.ttc: SimSun,ソンティ:style=Regular,従来型
11 /usr/share/fonts/chinese/simsun.ttc: NSimSun,新曲:style=Regular,従来型
12......
fonts.ymlの内容:
1- - - 2- name: Install Chinese Fonts.3 hosts: all
4 remote_user: root
5 become: yes
6 become_method: sudo
7 become_user: root
8 roles:9- fonts
Ansible Playbookディレクトリ構造(不要なディレクトリが削除されました):
1 $ tree roles/fonts
2 roles/fonts
3 ├── files
4 │ ├── simsun.ttc
5 │ └── simsunb.ttf
6 └── tasks
7 └── main.yml
892 directories,3 files
task / main.ymlコンテンツ:
1- - - 2# tasks file for fonts
34- name: install fontconfig.5 yum:6 name:"{{ item }}"7 state: installed
8 with_items:9- fontconfig
10 ignore_errors:true1112- name: mkdir /usr/share/fonts/chinese.13 file:14 path:/usr/share/fonts/chinese
15 state: directory
16 mode:07551718- name: Copy fonts to agent.19 copy:20 src:"{{ item }}"21 dest:/usr/share/fonts/chinese
22 with_items:23- simsun.ttc
24- simsunb.ttf
Recommended Posts