成功解决 OSError: cannot open resource
报错原因: 在程序中我使用了这样一句代码
font_text = ImageFont.truetype("font/simsun.ttc", text_size,encoding="utf-8")
其中用到的字体 simsun 在 Ubuntu 系统中可能并没有,怎么办呢?其实也很容易,我看到好多博客都是说 Windows 系统怎么解决的,在 Windows 系统下,可以进入 C:\Windows\Fonts 目录下,把里面的可用字体的路径复制到程序中的调用部分就可以了。
受此启发,只要也在 Linux 系统中,找到系统自带的字体,然后把路径改了就行。
在 Linux 下,查看系统字体路径的命令为
fc-list
可以看到字体的存放路径
但是笔者尝试了很多种,发现虽然不报错了,但是还是无法显示出来
索性尝试能不能使用 Windows 的熟知字体,这当然是可以的
1,首先进入 /usr/share/fonts/ 目录下
2,然后新建 msfonts 目录
3,把 Windows 存放的字体复制到该目录下,注意可能会说你没有权限,这时可以先放到主目录下,笔者刚刚放到主目录发现拖过来的文件没有读写的权限,这也很简单啦,通过 sudo chmod 777 分别授权即可。然后通过 sudo cp 命令即可复制成功
4,最终效果如下
|