주어진 공간에 NSString을 얼마만큼 렌더링 할 수 있는지 판단 할 수있는 방법이 있습니까?NSString 그리기/크기 방법으로 그려지는 하위 문자열을 결정하십시오.
모든 NSString sizeWithFont 메소드에 대해 알고 있습니다 (예 : sizeWithFont : constrainedToSize : lineBreakMode :). 문자열이 너무 길어서 들어갈 수없는 경우 문자열의 어떤 부분을 렌더링 할 수 있는지 알려주지 않습니다. 예를 들어
, 내가
NSString *testString = @"The brown dog";
이 내가 호출하는 경우 :
[testString sizeWithFont:[UIFont systemFontOfSize:17] constrainedtoSize:CGSizeMake(20, 20) lineBreakMode:UILineBreakModeWordWrap];
나는 CGSize = {20, 20}를 다시받을 수 있습니다. 그것은 문자열이 최소한 전체 크기를 가졌다는 것을 알려주지 만, 그것이 끝났는 지 혹은 얼마나 많이 들어갈 수 있었는지는 알려주지 않습니다. "브라운"만이 잘 맞았다면, 나는 그것을 알고 싶다.
어쩌면이를 수행 할 수있는 몇 가지 핵심 기반 방법이 있을까요?
죄송합니다. 당신이 말한 것의 첫 번째 부분은 내가했던 것에는 적절하지 않지만, 반복적 인 제안은 우리가 궁극적으로 한 일에 가깝습니다. 기본적으로, 우리는 방대한 크기로 시작했고, 바이너리 검색을 더 많거나 적게 수행하여 가장 긴 문자열을 찾았습니다. – DougW