LINUX上GDI+无法使用字体 font family not found
LINUX上GDI+无法使用字体 font family not found
在CentOS中安装中文字体
作者:唧唧
1、先从你本机 C:\Windows\Fonts 拷贝或者网络上下载你想要安装的字体文件(*.ttf文件)到 /usr/share/fonts/chinese/TrueType 目录下(如果系统中没有此目录,则自行mkdir创建,亦可重命名为自己喜欢的文件夹名)
2、修改字体文件的权限,使root用户以外的用户也可以使用
# cd /usr/share/fonts/chinese/TrueType
# chmod 755 *.ttf
3、建立字体缓存
# mkfontscale (如果提示 mkfontscale: command not found,需自行安装 # yum install mkfontscale )
# mkfontdir
# fc-cache -fv (如果提示 fc-cache: command not found,则需要安装# yum install fontconfig )
4、重启计算机
# reboot
2、安装完毕后,我们在代码中指定要使用的字体
- context.Response.ContentType = "image/gif";
- Bitmap basemap = new Bitmap(200, 60);
- Graphics garph1 = Graphics.FromImage(basemap);
- garph1.FillRectangle(new SolidBrush(Color.White), 0, 0, 200, 60);
- Font font = new Font("consola.ttf", 48, FontStyle.Bold, GraphicsUnit.Pixel);
- Random r = new Random();
- string letters = "ABCDEFGHIJKLMNPQRSTUVWXYZ";
- string letter;
- StringBuilder s = new StringBuilder();
- for (int i = 0; i < 5; i++)
- {
- letter = letters.Substring(r.Next(0, letters.Length - 1), 1);
- s.Append(letter);
- garph1.DrawString(letter, font, new SolidBrush(Color.Black), i * 38, r.Next(0, 15));
- }
- Pen linePen = new Pen(new SolidBrush(Color.Black), 2);
- for (int x = 0; x < 6; x++)
- {
- garph1.DrawLine(linePen, new Point(r.Next(0, 199), r.Next(0, 59)), new Point(r.Next(0, 199), r.Next(0, 59)));
- }
- basemap.Save(context.Response.OutputStream, ImageFormat.Gif);
- context.Session["CheckCode"] = s.ToString(); //存入Session,用于对比验证
- context.Response.End();
再次访问清晰可见啊
============ 欢迎各位老板打赏~ ===========
与本文相关的文章
- · centos安装node18
- · The instance of entity type ‘Customer’ cannot be tracked because another instance with the same key value for {‘Id’} is already being tracked.
- · .NET8实时更新nginx ip地址归属地
- · 解决.NET Blazor子组件不刷新问题
- · nginx日志按天分割
- · .NET8如何在普通类库中引用 Microsoft.AspNetCore
- · 解决Linux实例磁盘空间满问题
- · .NET8 Mysql SSL error
- · ASP.NET Core MVC的Razor视图渲染中文乱码的问题
- · centos yum安装Python3.8(史上最简单)
- · linux查看端口占用 netstat -tln|grep 8080
- · 解决jenkins git@github.com: Permission denied (publickey)