2011-10-24 2 views
0

핵심 텍스트를 사용하여 아래쪽으로 정렬 된 사각형 문자열로 그려야하는 특성 문자열이 있습니다. CTFrameSetter/CTFrame을 사용하여이 작업을 수행 할 수있는 방법이 있습니까? 아니면 수동으로 수행해야합니까? 수동 방식의 것 : CTFramesetterSuggestFrameSizeWithConstraints 코어 텍스트를 사용하여 프레임의 아래쪽에 텍스트 정렬

  • 를 사용하여 상기 프레임의 높이 밖에

    1. 도 경로의 높이를 조정한다.
  • +0

    어떤 언어에서? –

    +0

    핵심 텍스트 API는 C에서만 사용할 수 있다고 생각했습니다. – Aderstedt

    답변

    0

    수동으로해야합니다.

    CGRect boundingBox = CTFontGetBoundingBox(font); 
    
    //Get the position on the y axis 
    float midHeight = self.frame.size.height/2; 
    midHeight -= boundingBox.size.height/2; 
    
    CGPathAddRect(path, NULL, CGRectMake(0, midHeight, self.frame.size.width, boundingBox.size.height)); 
    

    참조 : Vertical align with Core Text?

    +0

    여러 글꼴을 사용한다면 어떨까요? –

    +0

    어떻게 작동하는지 이해할 수 없습니다. 은'path' 프레임을 그리는 데 사용되는 경로입니까? 어떻게 여러 줄을 사용할 수 있습니까? 한 줄에 대해 계산 된 경계 상자가 아닙니까? – MatterGoal

    관련 문제