uharfbuzz
v0.44.0
简化的Cython绑定,用于竖琴塑造引擎。
import sys
import uharfbuzz as hb
fontfile = sys . argv [ 1 ]
text = sys . argv [ 2 ]
blob = hb . Blob . from_file_path ( fontfile )
face = hb . Face ( blob )
font = hb . Font ( face )
buf = hb . Buffer ()
buf . add_str ( text )
buf . guess_segment_properties ()
features = { "kern" : True , "liga" : True }
hb . shape ( font , buf , features )
infos = buf . glyph_infos
positions = buf . glyph_positions
for info , pos in zip ( infos , positions ):
gid = info . codepoint
glyph_name = font . glyph_to_string ( gid )
cluster = info . cluster
x_advance = pos . x_advance
x_offset = pos . x_offset
y_offset = pos . y_offset
print ( f" { glyph_name } gid { gid } = { cluster } @ { x_advance } , { y_offset } + { x_advance } " )在构建Uharfbuzz软件包时,它会自动合并最小的harfbuzz源,因此您不必安装本机Harfbuzz库。
但是,如果要与系统提供的harfbuzz一起使用uharfbuzz(例如,如果您是从具有自定义配置的源构建的),则可以设置USE_SYSTEM_LIBS=1环境变量(请参见下面的示例)。
USE_SYSTEM_LIBS=1 pip install uharfbuzz --no-binary :uharfbuzz:使用pkg-config找到Harfbuzz安装,因此您必须在系统中使用Harfbuzz的.pc文件。如果您是从源头构建的,则将自动安装它们。否则,您可能需要安装Harfbuzz开发包,例如Fedora衍生的发行版上的harfbuzz-devel 。
注意:您必须通过启用实验API支持来构建Harfbuzz。
如果您愿意,请使用git tag -a为GPG签名的注释标签制作新的注释标签或git tag -s 。
用领先的“ V”命名新标签,然后是三个Major.minor.patch Digits,例如语义版本。查看现有标签以获取示例。
在标签消息中,写一些简短的发行说明,描述了自上一个标签以来的更改。主题行将是发行名称,消息正文将是发行说明。
最后,将标签推到远程存储库(例如,假设上游称为Origin):
$ git push origin v0.4.3
如果所有测试成功通过,这将触发CI构建分布软件包并将其上传到Python软件包索引。 CI还将自动创建一个新的GitHub版本,并为发行说明使用带注释的Git标签的内容。