2012-08-12 3 views
2

가능한 중복 :
iPhone - Convert CTFont to UIFont?는 아이폰 OS에 사용자 지정 글꼴을로드 동적으로

동적 전에 프로젝트에 추가하지 않고 당신은 내가 아이폰 OS에 사용자 지정 글꼴을 추가 할 수 있습니다 방법을 알고 있나요 컴파일 시간?

글꼴을 응용 프로그램의 런타임 중에 다운로드 한 다음 사용을 위해 동적으로로드하는 시나리오를보고 있습니다.

가능하다면,로드 한 후 UIFont로 사용하고 싶습니다.

내가이 일을 몇 가지 가능성을 통해 검색, 나는 CoreText를 사용하여 글꼴을로드 할 수 있습니다 것으로 나타났습니다 :이 작업을 수행 한 후,

- (CTFontRef)newCustomFontWithFileName:(NSString *)fontFileName 
           ofType:(NSString *)type 
           andSize:(float)pointSize 
{ 
    NSString *fontPath = [[NSBundle mainBundle] pathForResource:fontFileName ofType:type]; 
    NSData *data = [[NSData alloc] initWithContentsOfFile:fontPath]; 
    CGDataProviderRef fontProvider = CGDataProviderCreateWithCFData((CFDataRef)data); 
    [data release]; 

    CGFontRef cgFont = CGFontCreateWithDataProvider(fontProvider); 
    CGDataProviderRelease(fontProvider); 

    CTFontRef font = CTFontCreateWithGraphicsFont(cgFont, pointSize, NULL, NULL); 
    CGFontRelease(cgFont); 
    return font; 
} 

그러나이 것이 가능을위한 UIFont에 CTFontRef을 변환하는 것입니다 앱 전체에서 사용법?

당신이 아는/생각하는 것을 알려주십시오! :)

+1

표준 폰트 또는 앱 번들의 일부인이 질문은 런타임에 다운로드되는 폰트에 관한 것이고 다른 질문 **에 대한 대답은 그러한 폰트에 대해서는 ** 작동하지 않을 것입니다 ** –

답변

0

iOS 5.1부터 CGFont 또는 CTFont에서 UIFont을 생성하는 공개 API는 없습니다. 너는 운이 없어. :(

열기 http://bugreport.apple.com에서 기능 요청 당신이 그 (것)들을이에 대한 API를 추가합니다.이 ** ** 그 질문의 중복. 그 질문에 대한 허용 대답 글꼴에 의존이없는입니다

+0

awww man :(머리를 위로 해줘서 고마워! :) – Adrian