2011-04-20 4 views
8

"kCTKernAttributeName에 잘못된 이름이 있습니까?"핵심 텍스트에서 문자 간격/추적을 어떻게 변경합니까?

iOS에서 문자 간격/추적을 변경해야합니다. (사용하고있는 글꼴은 작은 크기에서는 너무 빡빡합니다.) 문자 간격을 변경하는 핵심 그래픽 루틴이 있지만 이러한 루틴은 유니 코드를 처리하지 않습니다. 글리프 측면에서 정의 된 다른 핵심 그래픽 루틴이 있지만 그 중 일부는 내 글꼴에 존재하지 않는 글리프의 시스템 글꼴로 되돌아가는 안전망이없는 상처의 세계와 같습니다.

그래서 핵심 텍스트는 이렇게하는 것처럼 보이고 핵심 텍스트는 CFAttributedString에서 kCTKernAttributeName을 지원합니다. 나는 커닝이 일반적으로 문자 - 쌍 속성이고 (이것은 문서에서 보이는 것처럼) 모든 글립 문자에 대한 글립 사전 조정에 대한 일률적 인 조정 즉, 이것은 내가 원하는 것을 할 것이라고 생각합니다. , 추적.

나는 핵심 텍스트 API로 변환 오히려 고통스러운 길을 가기 전에 누군가가 알고 있다면 ...

답변

4

kCTKernAttribute 이름은 당신이 원하는해야한다. 텍스트 범위에 설정하면 특정 글리프와 상관없이 글리프 간 간격을 일관되게 조정합니다.

커닝은 추적의 가상 동의어 인 것 같습니다. (여전히 "인쇄 ​​할 텍스트 부분에 (글자 또는 문자) 사이의 간격을 조정하십시오"라는 사전에 나와 있습니다. OS X 사용), 이중화 때문에 쌍 커닝 (pair kerning)의 의미 만 채택하고 있습니다. 아마도 어원 학자가 사물의 측면에 대해 논평하는 것이 더 좋을 것입니다 ...

+1

잘 했어. 감사! 수동으로 그림자 색상을 구현해야했지만 너무 어렵지 않았습니다. – smparkes

관련 문제