2015-04-27 44 views
0

我正在爲我創建的pdf添加不同長度的變量,並且我使用以下代碼將txt寫入pdf。如何計算NSString是否太長drawInRect

if (subLocationCellTextString.length > 0) { 
       NSString *areaLocationString = @"Area Location:"; 
       [areaLocationString drawInRect:CGRectMake(290.0, 195.0, 100.0, 25.0) withAttributes:blackAttributes]; 
       // line 
       [self drawLineDarkGreyRect:290.0 StartB:215.0 FinishA:555.0 FinishB:215.0]; 

       [subLocationCellTextString drawInRect:CGRectMake(382.0, 195.0, 200.0, 20.0) withAttributes:grayAttributes]; 
      } 

有幾個場合subLocationCellTextString對於drawInRect我做太久。我想知道是否有一種方法可以計算NSString的大小,所以如果它太大,我可以換行到第二行。

+2

使用'的NSString boundingRectWithSize:選項:屬性:背景:'方法。 – rmaddy

回答

0

您可以使用它像

CGRect rect = [areaLocationString boundingRectWithSize:CGSizeMake(fixedWidth,CGFLOAT_MAX) options:NSStringDrawingUsesLineFragmentOrigin attributes:blackAttributes context:nil]; 
    if (rect.size.height > yourheight){ 
     //Too long 
    }