作者: whooyun发表于: 2018-03-20 22:12
java操作微软雅黑字体,输出到图片中,发现在Ubuntu系统中出现的是乱码,经检查发现是因为没有雅黑字体。
解决方法
1、复制windows本地的雅黑字体上传到Ubuntu服务器
2、创建字体目录,并授权
3、加入字体缓存,并重启服务器
下面直接贴操作代码
root@iZwz9berl2oy3ecph491uiZ:/# fc-list The program 'fc-list' is currently not installed. You can install it by typing: apt install fontconfig root@iZwz9berl2oy3ecph491uiZ:/# root@iZwz9berl2oy3ecph491uiZ:/# root@iZwz9berl2oy3ecph491uiZ:/# root@iZwz9berl2oy3ecph491uiZ:/# apt install fontconfig Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: fontconfig-config fonts-dejavu-core libfontconfig1 The following NEW packages will be installed: fontconfig fontconfig-config fonts-dejavu-core libfontconfig1 0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded. Need to get 1,398 kB of archives. After this operation, 4,490 kB of additional disk space will be used. Do you want to continue? [Y/n] y Get:1 http://mirrors.cloud.aliyuncs.com/ubuntu xenial/main amd64 fonts-dejavu-core all 2.35-1 [1,039 kB] Get:2 http://mirrors.cloud.aliyuncs.com/ubuntu xenial-updates/main amd64 fontconfig-config all 2.11.94-0ubuntu1.1 [49.9 kB] Get:3 http://mirrors.cloud.aliyuncs.com/ubuntu xenial-updates/main amd64 libfontconfig1 amd64 2.11.94-0ubuntu1.1 [131 kB] Get:4 http://mirrors.cloud.aliyuncs.com/ubuntu xenial-updates/main amd64 fontconfig amd64 2.11.94-0ubuntu1.1 [178 kB] Fetched 1,398 kB in 0s (19.5 MB/s) Selecting previously unselected package fonts-dejavu-core. (Reading database ... 103214 files and directories currently installed.) Preparing to unpack .../fonts-dejavu-core_2.35-1_all.deb ... Unpacking fonts-dejavu-core (2.35-1) ... Selecting previously unselected package fontconfig-config. Preparing to unpack .../fontconfig-config_2.11.94-0ubuntu1.1_all.deb ... Unpacking fontconfig-config (2.11.94-0ubuntu1.1) ... Selecting previously unselected package libfontconfig1:amd64. Preparing to unpack .../libfontconfig1_2.11.94-0ubuntu1.1_amd64.deb ... Unpacking libfontconfig1:amd64 (2.11.94-0ubuntu1.1) ... Selecting previously unselected package fontconfig. Preparing to unpack .../fontconfig_2.11.94-0ubuntu1.1_amd64.deb ... Unpacking fontconfig (2.11.94-0ubuntu1.1) ... Processing triggers for man-db (2.7.5-1) ... Processing triggers for libc-bin (2.23-0ubuntu10) ... Setting up fonts-dejavu-core (2.35-1) ... Setting up fontconfig-config (2.11.94-0ubuntu1.1) ... Setting up libfontconfig1:amd64 (2.11.94-0ubuntu1.1) ... Setting up fontconfig (2.11.94-0ubuntu1.1) ... Regenerating fonts cache... done. Processing triggers for libc-bin (2.23-0ubuntu10) ... root@iZwz9berl2oy3ecph491uiZ:/# ls bin boot data dev etc home initrd.img initrd.img.old lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var vmlinuz vmlinuz.old root@iZwz9berl2oy3ecph491uiZ:/# cd /usr/ root@iZwz9berl2oy3ecph491uiZ:/usr# ls bin games include java lib local sbin share src root@iZwz9berl2oy3ecph491uiZ:/usr# cd share/ root@iZwz9berl2oy3ecph491uiZ:/usr/share# ls aclocal ca-certificates dh-python gdb icons libc-bin mysql po-debconf sgml-base X11 adduser calendar dict GeoIP info libdrm mysql-common polkit-1 systemd xml applications command-not-found distro-info gettext initramfs-tools libsensors4 nano popularity-contest systemtap xml-core apport common-licenses doc gettext-0.19.7 insserv lintian ntp pyshared sysv-rc yum-cli apps consolefonts doc-base glib-2.0 installation-report locale os-prober python tabset zoneinfo avahi console-setup dpkg gnupg intltool-debian locale-langpack pam python3 tasksel zsh base-files consoletrans dstat groff iptables locales pam-configs python-apt terminfo base-passwd cups emacs grub java man perl python-wheels ubuntu-release-upgrader bash-completion dbus-1 file grub-gfxpayload-lists keyrings man-db perl5 readline ufw binfmts debconf fio hal language-selector menu pixmaps resolvconf unattended-upgrades bug debhelper fonts help-langpack language-support mime pkgconfig rsyslog upstart build-essential debianutils gcc-5 i18n language-tools misc plymouth sgml vim root@iZwz9berl2oy3ecph491uiZ:/usr/share# cd fonts/ root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# ls truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# cd truetype/ root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/truetype# ls dejavu root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/truetype# cd dejavu/ root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/truetype/dejavu# ls DejaVuSans-Bold.ttf DejaVuSansMono-Bold.ttf DejaVuSansMono.ttf DejaVuSans.ttf DejaVuSerif-Bold.ttf DejaVuSerif.ttf root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/truetype/dejavu# cd .. root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/truetype# ls dejavu root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/truetype# cd .. root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# ls truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# cd .. root@iZwz9berl2oy3ecph491uiZ:/usr/share# ls aclocal ca-certificates dh-python gdb icons libc-bin mysql po-debconf sgml-base X11 adduser calendar dict GeoIP info libdrm mysql-common polkit-1 systemd xml applications command-not-found distro-info gettext initramfs-tools libsensors4 nano popularity-contest systemtap xml-core apport common-licenses doc gettext-0.19.7 insserv lintian ntp pyshared sysv-rc yum-cli apps consolefonts doc-base glib-2.0 installation-report locale os-prober python tabset zoneinfo avahi console-setup dpkg gnupg intltool-debian locale-langpack pam python3 tasksel zsh base-files consoletrans dstat groff iptables locales pam-configs python-apt terminfo base-passwd cups emacs grub java man perl python-wheels ubuntu-release-upgrader bash-completion dbus-1 file grub-gfxpayload-lists keyrings man-db perl5 readline ufw binfmts debconf fio hal language-selector menu pixmaps resolvconf unattended-upgrades bug debhelper fonts help-langpack language-support mime pkgconfig rsyslog upstart build-essential debianutils gcc-5 i18n language-tools misc plymouth sgml vim root@iZwz9berl2oy3ecph491uiZ:/usr/share# cd .. root@iZwz9berl2oy3ecph491uiZ:/usr# ls bin games include java lib local sbin share src root@iZwz9berl2oy3ecph491uiZ:/usr# ls bin games include java lib local sbin share src root@iZwz9berl2oy3ecph491uiZ:/usr# cd share/ root@iZwz9berl2oy3ecph491uiZ:/usr/share# ls aclocal ca-certificates dh-python gdb icons libc-bin mysql po-debconf sgml-base X11 adduser calendar dict GeoIP info libdrm mysql-common polkit-1 systemd xml applications command-not-found distro-info gettext initramfs-tools libsensors4 nano popularity-contest systemtap xml-core apport common-licenses doc gettext-0.19.7 insserv lintian ntp pyshared sysv-rc yum-cli apps consolefonts doc-base glib-2.0 installation-report locale os-prober python tabset zoneinfo avahi console-setup dpkg gnupg intltool-debian locale-langpack pam python3 tasksel zsh base-files consoletrans dstat groff iptables locales pam-configs python-apt terminfo base-passwd cups emacs grub java man perl python-wheels ubuntu-release-upgrader bash-completion dbus-1 file grub-gfxpayload-lists keyrings man-db perl5 readline ufw binfmts debconf fio hal language-selector menu pixmaps resolvconf unattended-upgrades bug debhelper fonts help-langpack language-support mime pkgconfig rsyslog upstart build-essential debianutils gcc-5 i18n language-tools misc plymouth sgml vim root@iZwz9berl2oy3ecph491uiZ:/usr/share# cd fonts/ root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# ls truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# ls truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# ls MSYHBD.TTC MSYH.TTC truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# sudo mkfontscale sudo: unable to resolve host iZwz9berl2oy3ecph491uiZ sudo: mkfontscale: command not found root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# ls MSYHBD.TTC MSYH.TTC truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# mv MSYHBD.TTC MSYHBD.ttf root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# mv MSYH.TTC MSYH.ttf root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# ls MSYHBD.ttf MSYH.ttf truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# mkdir chinese root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# cd chinese/ root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese# ls root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese# mkdir truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese# ls truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese# cd ls -bash: cd: ls: No such file or directory root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese# ls truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese# cd .. root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# ls chinese MSYHBD.ttf MSYH.ttf truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# cd truetype/ root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/truetype# ls dejavu root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/truetype# cd .. root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# ls chinese MSYHBD.ttf MSYH.ttf truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# cd chinese/ root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese# ls truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese# cd truetype/ root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese/truetype# ls root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese/truetype# pwd /usr/share/fonts/chinese/truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese/truetype# cd .. root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese# ls truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese# ls truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese# cd .. root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# ls chinese MSYHBD.ttf MSYH.ttf truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# mv *.ttf /usr/share/fonts/chinese/truetype/ root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# ls chinese truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# ls chinese truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# ls chinese truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts# cd chinese/ root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese# ls truetype root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese# cd truetype/ root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese/truetype# ls MSYHBD.ttf MSYH.ttf root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese/truetype# ls MSYHBD.ttf MSYH.ttf root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese/truetype# chmod 755 *.ttf root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese/truetype# ls MSYHBD.ttf MSYH.ttf root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese/truetype# mkfontscale The program 'mkfontscale' is currently not installed. You can install it by typing: apt install xfonts-utils root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese/truetype# apt install xfonts-utils Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: libfontenc1 libxfont1 x11-common xfonts-encodings The following NEW packages will be installed: libfontenc1 libxfont1 x11-common xfonts-encodings xfonts-utils 0 upgraded, 5 newly installed, 0 to remove and 0 not upgraded. Need to get 779 kB of archives. After this operation, 1,663 kB of additional disk space will be used. Do you want to continue? [Y/n] y Get:1 http://mirrors.cloud.aliyuncs.com/ubuntu xenial/main amd64 libfontenc1 amd64 1:1.1.3-1 [13.9 kB] Get:2 http://mirrors.cloud.aliyuncs.com/ubuntu xenial-updates/main amd64 libxfont1 amd64 1:1.5.1-1ubuntu0.16.04.4 [95.0 kB] Get:3 http://mirrors.cloud.aliyuncs.com/ubuntu xenial/main amd64 x11-common all 1:7.7+13ubuntu3 [22.4 kB] Get:4 http://mirrors.cloud.aliyuncs.com/ubuntu xenial/main amd64 xfonts-encodings all 1:1.0.4-2 [573 kB] Get:5 http://mirrors.cloud.aliyuncs.com/ubuntu xenial-updates/main amd64 xfonts-utils amd64 1:7.7+3ubuntu0.16.04.2 [74.6 kB] Fetched 779 kB in 0s (22.8 MB/s) Selecting previously unselected package libfontenc1:amd64. (Reading database ... 103357 files and directories currently installed.) Preparing to unpack .../libfontenc1_1%3a1.1.3-1_amd64.deb ... Unpacking libfontenc1:amd64 (1:1.1.3-1) ... Selecting previously unselected package libxfont1:amd64. Preparing to unpack .../libxfont1_1%3a1.5.1-1ubuntu0.16.04.4_amd64.deb ... Unpacking libxfont1:amd64 (1:1.5.1-1ubuntu0.16.04.4) ... Selecting previously unselected package x11-common. Preparing to unpack .../x11-common_1%3a7.7+13ubuntu3_all.deb ... Unpacking x11-common (1:7.7+13ubuntu3) ... Selecting previously unselected package xfonts-encodings. Preparing to unpack .../xfonts-encodings_1%3a1.0.4-2_all.deb ... Unpacking xfonts-encodings (1:1.0.4-2) ... Selecting previously unselected package xfonts-utils. Preparing to unpack .../xfonts-utils_1%3a7.7+3ubuntu0.16.04.2_amd64.deb ... Unpacking xfonts-utils (1:7.7+3ubuntu0.16.04.2) ... Processing triggers for libc-bin (2.23-0ubuntu10) ... Processing triggers for systemd (229-4ubuntu21.1) ... Processing triggers for ureadahead (0.100.0-19) ... Processing triggers for man-db (2.7.5-1) ... Processing triggers for fontconfig (2.11.94-0ubuntu1.1) ... Setting up libfontenc1:amd64 (1:1.1.3-1) ... Setting up libxfont1:amd64 (1:1.5.1-1ubuntu0.16.04.4) ... Setting up x11-common (1:7.7+13ubuntu3) ... update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults Setting up xfonts-encodings (1:1.0.4-2) ... Setting up xfonts-utils (1:7.7+3ubuntu0.16.04.2) ... Processing triggers for libc-bin (2.23-0ubuntu10) ... Processing triggers for systemd (229-4ubuntu21.1) ... Processing triggers for ureadahead (0.100.0-19) ... root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese/truetype# apt-get install ttf-mscorefonts-installer Reading package lists... Done Building dependency tree Reading state information... Done Package ttf-mscorefonts-installer is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source E: Package 'ttf-mscorefonts-installer' has no installation candidate root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese/truetype# mkfontscale root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese/truetype# mkfontdir root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese/truetype# fc-cache -fv /usr/share/fonts: caching, new cache contents: 0 fonts, 3 dirs /usr/share/fonts/X11: caching, new cache contents: 0 fonts, 2 dirs /usr/share/fonts/X11/encodings: caching, new cache contents: 0 fonts, 1 dirs /usr/share/fonts/X11/encodings/large: caching, new cache contents: 0 fonts, 0 dirs /usr/share/fonts/X11/util: caching, new cache contents: 0 fonts, 0 dirs /usr/share/fonts/chinese: caching, new cache contents: 0 fonts, 1 dirs /usr/share/fonts/chinese/truetype: caching, new cache contents: 4 fonts, 0 dirs /usr/share/fonts/truetype: caching, new cache contents: 0 fonts, 1 dirs /usr/share/fonts/truetype/dejavu: caching, new cache contents: 6 fonts, 0 dirs /usr/local/share/fonts: caching, new cache contents: 0 fonts, 0 dirs /root/.local/share/fonts: skipping, no such directory /root/.fonts: skipping, no such directory Re-scanning /usr/share/fonts: caching, new cache contents: 0 fonts, 3 dirs Re-scanning /usr/share/fonts/X11: caching, new cache contents: 0 fonts, 2 dirs Re-scanning /usr/share/fonts/X11/encodings: caching, new cache contents: 0 fonts, 1 dirs Re-scanning /usr/share/fonts/chinese: caching, new cache contents: 0 fonts, 1 dirs Re-scanning /usr/share/fonts/truetype: caching, new cache contents: 0 fonts, 1 dirs /var/cache/fontconfig: cleaning cache directory /root/.cache/fontconfig: not cleaning non-existent cache directory /root/.fontconfig: not cleaning non-existent cache directory fc-cache: succeeded root@iZwz9berl2oy3ecph491uiZ:/usr/share/fonts/chinese/truetype#