python哪个字体好看_Python实现对比不同字体中的同一字符的显示效果

news/2024/10/18 9:20:23/

有人在 opensuse 中文论坛询问他的输入法打出的「妩媚」的「妩」字为什么显示成「女」+「元」。怀疑是字体的问题,于是空闲时用好友写的 python-fontconfig 配合 pillow (pil 的一个 fork)写了个脚本,使用系统上所有包含这个「妩」字的字体来显示这个字,看看到底是哪些字体有问题。

(更新后的)脚本如下:

google chrome / chromium 用户请注意:如果复制得到的代码中含有不间断空格(0xa0),请手动替换下。

#!/usr/bin/env python3

# vim:fileencoding=utf-8

from pil import image, imagedraw, imagefont

import fontconfig

ch = '妩'

def get_fonts():

ret = []

for f in fontconfig.query():

f = fontconfig.fcfont(f)

if f.has_char(ch):

ret.append((f.file, f.bestname))

return ret

w, h = 800, 20000

image = image.new('rgb', (w, h), 'white')

draw = imagedraw.draw(image)

pos = 0

w = 0

strs = ch

for fontfile, fontname in get_fonts():

font = imagefont.truetype(fontfile, 24)

s = '%s: %s' % (fontname, strs)

font_width, font_height = font.getsize(s)

w = max((font_width, w))

draw.text((10, pos), s, font=font, fill='black')

pos += font_height

h = pos

image = image.crop((0, 0, w+10, h))

image.save('fonts.png')

寻找字体,然后渲染到当前目录下的fonts.png文件中。寻找字体的过程挺花时间的,要耐心等待。最后结果如下:

174446868d12025b00f00fae76f6dba2.png

我这里,文泉驿微米黑、方正魏碑ref、某个 droid sans fallback 字体中「妩」字的字形不对。(我这里有三个字体文件都叫「droid sans fallback」……)>

希望与广大网友互动??

点此进行留言吧!


http://www.ppmy.cn/news/589269.html

相关文章

常规英文字体 电商_电商设计中常见的中英字体的应用

但是作为艺术字体,每一个设计师都可以通过自己的创作来设计一套完整的字体,除了中文之外,还有英文字体。中文字体相对比较难些,要有横竖撇捺,偏旁部首,结构处理等,而英文字体只有26个字母即可创作一套字体,所以说,中英文加在一起,字体数量是非常庞大的。 常见的中文字…

linux 安装字体 注册表,如何安装字体,如何安装字体?

导航:网站首页 > 如何安装字体,如何安装字体? 如何安装字体,如何安装字体?,有知道的吗?求大神们来解答一下呀,谢谢了 匿名网友: 不管你应用的是哪个版本的windows系统,安装方法都一样: 第一步:打开“控制面版”,然后在里边找到“字体”,双击这个图标,这时你看到的…

网页字体使用探究

探究 在 CSS3 之前,web 设计师必须使用已在用户计算机上安装好的字体。那个时候,当我们在网页中指定字体后,浏览器对网页进行解析时,会去系统中去查找我们指定的字体,如果找不到,那就只能使用浏览器默认的…

html 字体思源_CSS font-family 各字体一览表

windows常见内置中文字体 字体中文名字体英文名 宋体 SimSun(浏览器默认) 黑体 SimHei 微软雅黑 Microsoft Yahei 微软正黑体 Microsoft JhengHei 楷体 KaiTi 新宋体 …

字体版权列表

http://zenozeng.github.io/Free-Chinese-Fonts/ Fork me on GitHub Family: 黑体宋体楷体仿宋其他 License: GPLSIL文鼎公众授权CCApache Tag: 可商用可嵌入PDF 字体名称 授权 可否商用 可否嵌入 PDF 备注思源黑体 SIL 可 可 Github Repo 文泉驿微米黑 Apache2.0 or GPL…

聊聊WPF中字体的设置

1. 今天帮同事调试一个字体的bug: TextBox中的中文显示大小不一致, 比如包含”杰“,”热“。 原因是WPF针对点阵字体需要制定特定字体才能正确渲染, 比如中文应该设置为”SimSun: 2. 如果一段文本中既包含中文又包含英…

php动态字体,APP动态切换字体的实现

APP动态切换字体的实现 qq2519157 • 2019 年 01 月 10 日 需求 最近做完了新功能,突发奇想,想着如何处理app的动态切换字体 方案 方案1:通过反射机制,修改Typeface类的字体库引用 object FontUtils { fun setDefaultFont(context: Context,staticTypefaceFieldName…

Pelcod与VISCA常用控制协议整理

PELCO-D控制协议(部分) 字节 1 字节 2 字节 3 字节 4 字节 5 字节 6 字节 7 同步字节 地址码 指令码 1 指令码 2 数据码 1 数据码 2 校验码 该协议中所有数值都为十六进制数同步字节始终为 FFH地址码为摄像机的逻辑地址号,地址…