텍스트를 명중하는 방법이 있습니까? 내가 텍스트 그리는 경우 즉, 예를 들면 "화면에, 경계 상자 내에서, 나는이 빈 사각형의 크기와 위치 (공백) 말할 수있는 방법"안녕하세요 그래프! ": 위의Cocoa (Mac)에서 히트 테스트 텍스트?
- 공백 사각형을 "E"문자
- "O"문자 위에서 걸쳐 빈 사각형 상기 문자 "P"
- 까지 "g"전 공간까지의 문자 "H"아래 빈 사각형
등을 사용하면 아이디어를 얻을 수 있습니다.
즉, 실제 텍스트가 차지하는 영역과 실제로 비어있는 영역을 찾는 방법.
플랫폼 (그래픽 라이브러리)은 Mac OS X의 Cocoa이고, 문자 세트는 유니 코드 (원시 CoreGraphics API를 제외시킬 수 있습니까?)이며, 글꼴은 Cocoa에서 사용할 수있는 모든 것일 수 있습니다. 당신이 원하는 그 NSGlyph
를 얻을, 그리고
//Get the range of characters, which may be different than the range of glyphs
NSRange range = [[textView layoutManager]glyphRangeForCharacterRange:NSMakeRange(charIndex, 0) actualCharacterRange:NULL]
//Get the rect of the character
NSRect rect = [[textView layoutManager]boundingRectForGlyphRange:range inTextContainer:[textView textContainer]];
을 : 사전
또는 다른 관점에서 보면 텍스트를 최소한으로 둘러싸는 영역 (직사각형) 목록을 가져 오는 것입니다. – adib