4

我正在对绘制数字的 UIView 应用比例变换。(这个数字实际上是用 drawInRect 绘制的;看不到 UILabel。)比例变换使视图小了很多……比如说,小了 80%。

结果数字看起来有点“矮胖”。有没有一种方法可以让我的文本看起来很好并且抗锯齿,就像它应该看起来的那样?

4

2 回答 2

4

问题是您的比例只是放大了渲染的(位图)文本,使其变得模糊。一种方法是在缩放之前根据容器的大小更改文本的字体大小,甚至完全避免缩放而只更改字体大小。请参阅此相关问题

结果取决于您如何缩放视图。可能仅仅改变字体大小是不够的,您需要拉伸渲染的文本。如果是这种情况,您将不得不想出另一种方法

我知道您没有使用 UILabel,但是myLabel.adjustsFontSizeToFitWidth = YES如果您决定走这条路,请为您设置字体大小技巧。

于 2011-03-10T10:05:32.477 回答
2

我的解决方案:

  lbl.layer.shouldRasterize = YES;
  lbl.layer.rasterizationScale = 0.375f;

存储为原始大小时设置 shouldRasterize。

于 2012-11-15T22:48:01.793 回答