linux服务器下添加字体
版权声明:本文为楼主原创文章,未经楼主允许不得转载,如要转载请注明来源。
引言:这两天在开发一个动态生成海报的东西(图片拼接,图片水印),开发在windows下没有问题,图片和文字都能正常的生成出来。但是当我将程序发布到服务器上(linux)时,发现生成的海报图片文字没生成出来。楼主使用的是graphics.drawString("张三", chunkWidth, chunkHeight);这里graphics使用的字体楼主设置的是宋体。而BufferedImage在内存创建的图像调用的是服务器端的字体。而程序所在的linux服务器没有装该字体,所以就出现了文字没生成出来的问题。下面讲怎样在linux服务器下添加字体。
这里我将本机的宋体安装到linux服务器上。
首先得找到宋体的文件,很简单:我们打开c盘,搜索simsun.ttc,然后将该文件copy一份。或者自己网上去下载也行。
楼主试了两种方法:
1.在java环境中添加字体
首先进入到服务器使用的jre目录,一般都是在:usr/lib/jvm/java-6-sun/jre/lib/fonts
使用的命令就是 cd usr/lib/jvm/java-1.8.0/jre/lib/fonts.
注意:这里的java-1.8.0可能和你的不一样,按你自己的名称进入。如果进去之后没有fonts文件夹,就自己创建一个,命令是 mkdir fonts
进入之后,将simsun.ttc文件copy到该目录下即可。(可以使用文件服务器放上去,你也可以使用linux的cp命令)
然后重启服务器就ok
2.添加系统字体
首先需要将simsun.ttc放到服务器上,可以建一个目录,楼主建的目录为:fonts
进入到该目录,将simsun.ttc放在该目录下,然后开始执行以下命令:
[root@localhost fonts]# mkfontscale
[root@localhost fonts]# mkfontdir
[root@localhost fonts]# fc-cache
这样在重启服务器就ok了。
linux服务器下添加字体的更多相关文章
- LINUX系统下添加映射存储LUN
LINUX系统下添加映射存储LUN(无需重启) 背景:Oracle rac环境 添加新实例,重新划分存储空间,从存储映射新的LUN. 问题:映射后,linux操作系统无法识别新的LUN,不能重启系统, ...
- 用linux服务器下的/dev/shm/来释放磁盘的压力
巧用linux服务器下的/dev/shm/来释放磁盘的压力 浏览:646 | 更新:2013-06-18 18:08 | 标签: 磁盘 tmpfs是Linux/Unix系统上的一种基于内存的文件系统. ...
- Linux服务器下对Oracle作Rman备份
由于工作需要,最近要对几台Linux系统下的Oracle数据库进行Rman备份,就在操作的同时,整理了一下,方便今后作为资料进行查阅. ------------------------Linux服务器 ...
- 在linux服务器新添加硬盘,如何识别、挂载。
在linux服务器新添加硬盘,如何识别.怎样挂载磁盘.过程是怎么样. fdisk - manipulate disk partition tablemkfs - build a Linux files ...
- 在linux服务器下日志提取的python脚本(实现输入开始时间和结束时间打包该时间段内的文件)
1.需求:近期在提取linux服务器下的日志文件时总是需要人工去找某个时间段内的日志文件,很是枯燥乏味,于是乎,我就想着用python结合linux指令来写一个日志提取的脚本,于是就有了以下脚本文件: ...
- Linux 服务器下多网卡的负载均衡
Linux 服务器下多网卡负载均衡的实现 一.引言 现今几乎各行各业内部都建立了自己的服务器,由于服务器的特殊地位,它的可靠性.可用性及其 I/O 速度就显得非常的重要, 保持服务器的高可用 ...
- Linux环境下中文字体乱码处理办法
项目中包含了一项生成JPG图片的功能,该功能需要使用JAVA的Graphics2D动态生成图片中的文字,原来在Windows平台中没有发现问题,但是迁移至Linux平台后发现生成的中文变成了乱码. 百 ...
- Linux环境下添加ftp账号步骤
(1)远程登录Linux服务器所用的工具,免费开源,可以从网站上很容易就下载到. (2)打开putty,输入服务器IP,进入后按提示进入用户名和密码输入超级管理员 root,然后系统让输入密码,注意此 ...
- linux系统下添加新硬盘的方法详解
对于linux新手来说,在linux上添加新硬盘,是很有挑战性的一项工作. 在Linux服务器上把硬盘接好,启动linux,以root登陆. fdisk -l ## 这里是查看目前系统上有几块硬盘 D ...
随机推荐
- 简单使用SQLite 的增删改查
1.插入 第一种方式 INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (1, 'Paul', 32, 'California', 200 ...
- Allegro建立引脚封装概念名词梳理
首先感谢于博士的60讲的Cadence教学视频,老师讲的还是很有耐心,很细致,谢谢! 目前还只是看到建立PCB封装这一块,正好手头上有个案子在做,边做边学的进度还是要好很多.以前的工作对原理图这一块的 ...
- Oracle的内存结构
备注:本图片截图自“炼数成金” Oracle的体系结构分为内存结构.进程,磁盘文件. 内存结构分为SGA, PGA.SGA是系统全局区,是所有的用户共享区,PGA是某个用户的私有区. SGA分为sha ...
- iOS真机UI调试利器——Reveal
做iOS的开发,UI是非常非常重要的一环.调试时我们一般用模拟器,提交前用真机做测试.用模拟器来调试UI效果虽然快捷方便,但有时仍然希望有更强大 的工具来帮助分析UI,尤其是专注在UI的效果调试时.最 ...
- 网页闯关游戏(riddle webgame)--SQL注入的潘多拉魔盒
前言: 之前编写了一个网页闯关游戏(类似Riddle Game), 除了希望大家能够体验一下我的游戏外. 也愿意分享编写这个网页游戏过程中, 学到的一些知识. web开发初学者往往会忽视一些常见的漏洞 ...
- Node.js高级编程读书笔记 - 3 网络编程
Outline 3.4 构建TCP服务器 3.5 构建HTTP服务器 3.6 构建TCP客户端 3.7 创建HTTP请求 3.8 使用UDP 3.9 用TLS/SSL保证服务器的安全性 3.10 用H ...
- LintCode Search a 2D Matrix II
排好序的二维数组, 从上到下从左到右增大, 给出一个数找出此数组里有多少个这个数. 不用两个循环做, 着手于条件(从左下角开始,若相等往右上跳一个,若小于target往右边跳一个,若大于target往 ...
- codeforces 199a
link:http://codeforces.com/contest/342/problem/A 恩恩,读错题了.人家是at most 7,我理解成了at lease 7.好欢乐~ #include ...
- 导航代码position:relative
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="C ...
- httpd启动脚本
#!/bin/bash # chkconfig: - . /etc/rc.d/init.d/functions if [ -f /etc/sysconfig/httpd ]; then . /etc/ ...