我正在寻找一种更简单的方法来设置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设置适当的权重?特别是我正在寻找消除循环

最佳答案

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

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

07-28 06:18