2012-02-14 5 views
5

사용자 정의 글꼴을 내 리소스 및 번들 리소스에 추가했으며 내 plist에도 추가했습니다. iOS5에서는 모든 것이 잘 작동하지만 iOS 4.3 시뮬레이터를 사용하면 사용자 정의 글꼴이 작동하지 않습니다.iOS 5 사용자 정의 글꼴

왜 그런가?

lblWait.font = [UIFont fontWithName:@"AvenirNextLTPro-Medium" size:22]; 
+0

'응용 프로그램에서 제공하는 글꼴'에서 plist에있는 정확한 값 목록을 표시 할 수 있습니까? – warrenm

답변

24

첫 번째 매개 변수에 그있는 NSString의 이름은 그 자리에 있어야하고 어떤 이상한 것은이 일치하지 않는 점이다 : 여기

내가 글꼴을 접근하고 방법의 샘플입니다. .otf 파일인지 .ttf 파일인지에 따라 다릅니다. 나는 .otf 파일이 포스트 스크립트 이름을 사용하고 .ttf가 전체 이름을 사용한다는 것을 발견했다. 이를 발견하는 좋은 방법은 Font Book에서 폰트 파일을 열고 정보를 찾는 것입니다 (cmd-I). 나는 무엇이 막대기인지보기 위해 노력할 것입니다.

enter image description here

편집 :

그것은 TTF는 전체 이름을 사용하고 OTF는 POSTSCRIPT 이름을 사용하지 항상, 당신은 모두를 시도해야합니다.

+1

좋은 의견입니다. 이 특정 글꼴을 iOS 5.1 시뮬레이터, iOS 4.3 시뮬레이터 및 iOS 4.1을 실행하는 iPhone에서 사용할 수있었습니다. OTF 파일의 이름은'AvenirNextLTPro-Medium.otf'이며 내부 PostScript 이름은'AvenirNextLTPro-Medium'입니다. – warrenm

+0

warrenm, 예, 작동하지만 ios4.3과 ios5 사이를 전환 할 때 글꼴 모양이 달라 보입니다. 나는 아직도 여기에 문제가있다. 일관성있는 것은 없습니다. 전체 이름을 사용할 때 글꼴 크기를 설정해도 아무런 효과가 없습니다! 포스트 스크립트 이름을 사용할 때 글꼴 크기는 작동하지만 글꼴은 ios5에서 작동하지만 글꼴은 원래 문제점 인 ios5에서 작동하지 않습니다. – Jesse

+0

http://stackoverflow.com/questions/7980812/objective-c-ios5-font-rendering-has-changed – Jesse

9

많은 경우이 문제의 원인은 글꼴 파일이 프로젝트에 추가되었지만 대상이 아닌이 아니기 때문입니다.

글꼴을 클릭하고 오른쪽 열의 "대상 멤버십"에 체크 표시가되어 있는지 확인하십시오.