为NSFont设定重量

时间:2015-06-11 04:07:45

标签: cocoa fonts

我正在寻找一种更简单的方法来为NSFont设置权重。

现在我只能这样做:

void SetWeight(NSFont font, int weight)
{
   NSFontManager *manager = [NSFontManager sharedFontManager];
   int currentWeight = [manager weightOfFont:font];
   while( currentWeight != weight )
   {
      if( currentWeight >= weight )
      {
         [manager convertWeight:NO ofFont:font];
         currentWeight--;
      }
      else
      {
          [manager convertWeight:YES ofFont:font];
          currentWeight++;
      }
   }
}

是否有更简单的方法为NSFont设置合适的重量?特别是我正在寻找消除循环

2 个答案:

答案 0 :(得分:2)

NSFontManager中的此方法是否适合此目的?

- (NSFont *)fontWithFamily:(NSString *)family
                    traits:(NSFontTraitMask)fontTraitMask
                    weight:(NSInteger)weight
                      size:(CGFloat)size

答案 1 :(得分:1)

对于按钮例如

button.font = [NSFont systemFontOfSize:13 weight:NSFontWeightMedium];