ios:水平缩放字体而不进行光栅化

时间:2015-06-21 00:34:34

标签: ios fonts scale

Android提供了一个属性textScaleX,允许在保留字体高度的同时水平缩放文本。我非常广泛地使用Android应用程序(特别是对于那些不像英语那么紧凑的语言),并希望在ios中找到类似的东西。

显然,我可以将文本绘制到图形上下文并将其缩放为图像,但这似乎是一个相当尴尬的解决方案,它将所有文本项转换为ImageView-s。

是否有原生方式水平缩放文字?例如,可能有一个选项可以根据系统字体创建自定义字体,并更改负责文本宽度的参数。

2 个答案:

答案 0 :(得分:1)

使用matrix的{​​{1}}属性。

这是一个在UIFontDescriptor中使用UILabel的示例,并将其字体设置为水平拉伸1.3倍。

self.label

答案 1 :(得分:0)

您可以缩放包含文本的UILabel或UITextView:

UILabel *label = ...
label.transform = CGAffineTransformMakeScale(0.8,1); //reduced size in x direction by 20%

如果这还不够,你可以查看NSLayoutManger,那里可能有东西。