gpt4 book ai didi

python - 如何在 Python Pillow 中设置字体的字距调整?

转载 作者:行者123 更新时间:2023-12-05 02:10:36 51 4
gpt4 key购买 nike

对于 Pillow 类 ImageDraw ( https://pillow.readthedocs.io/en/stable/reference/ImageDraw.html#PIL.ImageDraw.PIL.ImageDraw.ImageDraw.text ),我找到了参数 features。它可以调整这个字体参数:https://learn.microsoft.com/en-us/typography/opentype/spec/featurelist

如何设置字距调整(kern)参数?我不懂语法。

这是行不通的:

draw.text((61, 386), text, (0, 0, 0), font=font, features={"kern": 1.0})

最佳答案

我最近遇到了同样的问题。我决定最好的方法是单独绘制每个字母并计算使其均匀所需的间距。这是我使用的代码。

text = "Sample Text"
total_text_width, total_text_height = draw.textsize(text, font=font)
width_difference = desired_width_of_text - total_text_width
gap_width = int(width_difference / (len(text) - 1))
xpos = left_side_padding
for letter in text:
draw.text((xpos,0),letter, (0,0,0), font=font)
letter_width, letter_height = draw.textsize(letter, font=font)
xpos += letter_width + gap_width
  • desired_width_of_text 需要设置,指定想要的文字宽度
  • left_side_padding 应为 0 或从左侧指定任何填充
  • font 需要指定合适大小的字体

default spacing vs drawing each letter and calculating spacing

关于python - 如何在 Python Pillow 中设置字体的字距调整?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58591305/

51 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com