在python image 中安装中文字体的实现方法


Posted in Python onAugust 22, 2019

如果一些应用需要到中文字体(如果pygraphviz,不安装中文字体,中文会显示乱码),就要在image 中安装中文字体。

默认 python image 是不包含中文字体的:

mac-temp:relation_graph test$ docker run --rm -it python bash
root@36d738e2084c:/# fc-list
/usr/share/fonts/truetype/dejavu/DejaVuSerif-Bold.ttf: DejaVu Serif:style=Bold
/usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf: DejaVu Sans Mono:style=Book
/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf: DejaVu Sans:style=Book
/usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf: DejaVu Sans:style=Bold
/usr/share/fonts/truetype/dejavu/DejaVuSansMono-Bold.ttf: DejaVu Sans Mono:style=Bold
/usr/share/fonts/truetype/dejavu/DejaVuSerif.ttf: DejaVu Serif:style=Book

Dockerfile 如下:

FROM python
RUN apt-get update
RUN apt-get install -y apt-utils dialog xfonts-utils
COPY ./wqy-microhei.ttc /usr/share/fonts/
RUN cd /usr/share/fonts/
RUN mkfontscale && mkfontdir && fc-cache

重新build image

mac-temp:ttc test$ docker build -t ttc:0.0.1 .

检查是否安装成功

mac-temp:ttc test$ docker run --rm -it ttc:0.0.1 bash
root@b1cc465b4ba9:/# fc-list :lang=zh-cn
/usr/share/fonts/wqy-microhei.ttc: WenQuanYi Micro Hei,文泉?微米黑,文泉驿微米黑:style=Regular
/usr/share/fonts/wqy-microhei.ttc: WenQuanYi Micro Hei Mono,文泉?等??微米黑,文泉驿等宽微米黑:style=Regular

其中 wqy-microhei.ttc 字体文件是在其他其他桌面系统上拷贝过来的,可以使用以下方法找到:

mac-temp test$ fc-list :lang=zh-cn
/System/Library/Assets/com_apple_MobileAsset_Font4/2e3dd84241cc7676f2fc8c357c9087fee8cd0075.asset/AssetData/Lantinghei.ttc: 兰亭黑\-简,?亭黑\-?,Lantinghei SC:style=Demibold,中黑
/System/Library/Assets/com_apple_MobileAsset_Font4/8d69c72f04dcc2dfc086aa401dbab7f8ec55d0bb.asset/AssetData/Kaiti.ttc: 楷体\-繁,楷?\-繁,Kaiti TC:style=黑体,黑?,Black

以上这篇在python image 中安装中文字体的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python共享引用(多个变量引用)示例代码
Dec 04 Python
Python基于PycURL自动处理cookie的方法
Jul 25 Python
Java多线程编程中ThreadLocal类的用法及深入
Jun 21 Python
浅谈python字典多键值及重复键值的使用
Nov 04 Python
python smtplib模块自动收发邮件功能(一)
May 22 Python
python实现超市扫码仪计费
May 30 Python
Scrapy基于selenium结合爬取淘宝的实例讲解
Jun 13 Python
Pytorch DataLoader 变长数据处理方式
Jan 08 Python
Python实现FLV视频拼接功能
Jan 21 Python
python如何实现单链表的反转
Feb 10 Python
使用python自动追踪你的快递(物流推送邮箱)
Mar 17 Python
python3 os进行嵌套操作的实例讲解
Nov 19 Python
解决Python3用PIL的ImageFont输出中文乱码的问题
Aug 22 #Python
用Pelican搭建一个极简静态博客系统过程解析
Aug 22 #Python
Django admin.py 在修改/添加表单界面显示额外字段的方法
Aug 22 #Python
Django stark组件使用及原理详解
Aug 22 #Python
Python学习笔记之字符串和字符串方法实例详解
Aug 22 #Python
Python学习笔记之列表和成员运算符及列表相关方法详解
Aug 22 #Python
Django上线部署之IIS的配置方法
Aug 22 #Python
You might like
php 缓存函数代码
2008/08/27 PHP
PHP实现的Redis多库选择功能单例类
2017/07/27 PHP
CI框架附属类用法分析
2018/12/26 PHP
php PDO属性设置与操作方法分析
2018/12/27 PHP
关于laravel后台模板laravel-admin select框的使用详解
2019/10/03 PHP
javascript 客户端验证上传图片的大小(兼容IE和火狐)
2009/08/15 Javascript
解决jquery submit()提交表单提示:f[s] is not a function
2013/01/23 Javascript
Jquery 实现表格颜色交替变化鼠标移过颜色变化实例
2013/08/28 Javascript
深入理解JavaScript中的对象复制(Object Clone)
2016/05/18 Javascript
jQuery获取访问者IP地址的方法(基于新浪API与QQ查询接口)
2016/05/25 Javascript
Jquery获取第一个子元素简单实例
2016/06/02 Javascript
使用three.js 画渐变的直线
2016/06/05 Javascript
js实现三级联动效果(简单易懂)
2017/03/27 Javascript
javascript 初学教程及五子棋小程序的简单实现
2017/07/04 Javascript
Kindeditor单独调用多图上传实例
2017/07/31 Javascript
详解使用create-react-app添加css modules、sasss和antd
2018/07/31 Javascript
基于JavaScript实现贪吃蛇游戏
2020/03/16 Javascript
JS script脚本中async和defer区别详解
2020/06/24 Javascript
js实现点击上传图片并设为模糊背景
2020/08/02 Javascript
React Native登录之指纹登录篇的示例代码
2020/11/03 Javascript
在Python中使用lambda高效操作列表的教程
2015/04/24 Python
Python读写文件方法总结
2015/06/09 Python
在Python中使用zlib模块进行数据压缩的教程
2015/06/26 Python
详解Tensorflow数据读取有三种方式(next_batch)
2018/02/01 Python
python实现QQ批量登录功能
2019/06/19 Python
如何在Django配置文件里配置session链接
2019/08/06 Python
ubuntu上安装python的实例方法
2019/09/30 Python
用python监控服务器的cpu,磁盘空间,内存,超过邮件报警
2021/01/29 Python
利用CSS3的border-radius绘制太极及爱心图案示例
2016/05/17 HTML / CSS
亚洲最大旅游体验平台:KKday
2017/10/21 全球购物
师范毕业生自荐信
2013/10/17 职场文书
购房委托书范本
2014/09/18 职场文书
助学金感谢信
2015/01/20 职场文书
上课讲话检讨书范文
2015/05/07 职场文书
2016年三八红旗手先进事迹材料
2016/02/26 职场文书
Java比较两个对象中全部属性值是否相等的方法
2021/08/07 Java/Android