1

您可以使用 setTextSize() 控制绘制到画布中的文本字符的高度。例如,如果你想要高度为 8 像素的文本,你可以这样写:

mPaint.setTextSize(8);

这工作得很好。但是,我似乎找不到设置宽度的方法。因此,8x12 像素字符看起来与 12x12 字符完全相同。我正在使用等宽字体,并希望仔细控制画布中每个字符的大小。

关于如何以像素为单位设置字符宽度的任何想法?

4

1 回答 1

1

我相信文本的垂直高度被认为是文本的“大小”,而水平宽度被认为是“比例”。例如,如果您使用 Paint 在画布上绘制文本,则 Paint 具有称为getTextScaleXsetTextScaleX的方法,您可以使用它们:

获取 [并设置] 绘制文本的水平比例因子。

根据您使用画布的方式,这些可能是您想要使用的方法 - 大多数其他文本方法处理水平文本间距,而不是修改实际字符本身的大小。

于 2012-07-09T21:49:59.133 回答