2013-10-10 25 views
0

如何使用屬性字符串設置minimumfont大小或minimumscalfactor(ios7)。如何使用屬性字符串設置minimumfont大小或minimumscalfactor(ios7)?

NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init]; 
    paragraphStyle.lineBreakMode = self.lineBreakMode; 
    paragraphStyle.alignment = self.textAlignment; 

    NSDictionary *dictionary = @{ NSFontAttributeName: self.font, 
            NSParagraphStyleAttributeName: paragraphStyle, 
            NSForegroundColorAttributeName:self.textColor}; 


    [self.formattedText drawAtPoint:vLineRect.origin withAttributes:dictionary]; 

請問我該如何設置屬性字符串中的minimumfont大小?

回答

3

要更換minimumFontSize你需要使用minimumScaleFactor與iOS 7是這樣的:

[_myLabel setMinimumScaleFactor:10.0/FONT]]; 

10.0將是最小尺寸

並用大小([UIFont fontWithName:@"nameOfFont" size:15.0f],您的字體名稱和所需大小)的自定義字體替換字體。

所以與iOS 6將是相同的:

[_myLabel setMinimumFontSize:10.0]; 

蘋果文檔here

您可以添加一個測試用minimumFontSize與iOS 6和minimumScaleFactor與iOS 7:

if ([_myLabel respondsToSelector:@selector(setMinimumScaleFactor:)]) 
    [_myLabel setMinimumScaleFactor:10.0/FONT]]; 
else 
    [_myLabel setMinimumFontSize:10.0]; 
+0

感謝您的答覆。但是我想在屬性字符串中設置mininumscalfactor。我可以如何實現這一點。我想使用drawAtPoint:withattribute來打印文本。 – Hiren

+0

你將把你的文本放在textview或標籤中。因此,您可以將MinMaximumScaleFactor設置爲您的標籤,而不是您的NSAttributedString。 –

+1

這是錯誤的:[_myLabel setMinimumScaleFactor:10.0/FONT]];你應該使用[_myLabel setMinimumScaleFactor:10.0/font size]];例如:[_myLabel setMinimumScaleFactor:10.0/25.0]]; 25.0是您原始字體大小的大小。 10.0是你想要的最小值。這意味着0.4的值。這是蘋果所需要的價值。 –

相關問題