【发布时间】:2019-05-14 16:00:08
【问题描述】:
在将居中画布文本 (\u25a1) 小部件放置在具有相同 x 的居中矩形小部件上方时,我注意到了一个伪影:
使用过一次或两次字体渲染后,我意识到“居中”有多种可能的定义。现在我想知道使用哪种 Tk 画布文本。
在我之前的项目中,我使用了(pen+text.advance)/2,其中 text.advance 是每个字符的累积前进宽度。这就是我假设 Tk 基于我所经历的行为所使用的。
但是,另一种使文本居中的可能方法是使用累积的位图覆盖率进行居中,从最左边的字符位图左边缘到最右边的位图右边缘测量。我相信这更有可能是我想要的。
Q1:Tk 画布文本居中在字体指标方面应该如何工作?
Q2:我看到的行为是否存在错误,或者可能未明确说明?
编辑:更多地使用它,方形符号有时与矩形对齐,有时不是。可能是一些舍入误差。问题是它是否是一个错误。
编辑 2:将 0.5 添加到 x 似乎将正方形放在正确的位置。也许矩形和文本的像素原点定义不同?
【问题讨论】: