[swift] Swift FontBlaster를 사용하여 앱에서 다국어 폰트를 사용하는 방법은?

앱에서 다국어 폰트를 사용하는 것은 사용자 경험을 개선하는 데 중요한 역할을 합니다. Swift에서는 FontBlaster라는 라이브러리를 사용하여 간편하게 다국어 폰트를 적용할 수 있습니다. 이 글에서는 Swift FontBlaster를 사용하여 앱에서 다국어 폰트를 사용하는 방법에 대해 알아보겠습니다.

FontBlaster 라이브러리 설치

먼저, 프로젝트에 FontBlaster 라이브러리를 설치해야 합니다. 프로젝트의 Podfile에서 다음과 같이 FontBlaster를 추가합니다.

pod 'FontBlaster'

그리고 터미널에서 pod install을 실행하여 라이브러리를 다운로드 및 설치합니다.

폰트 파일 추가

FontBlaster를 사용하기 위해 폰트 파일을 프로젝트에 추가해야 합니다. 프로젝트 내에 .ttf 또는 .otf 형식의 폰트 파일을 추가합니다. 파일을 추가한 후에는 Build Phases 섹션에서 해당 파일을 프로젝트에 포함시켜야 합니다.

FontBlaster 사용

FontBlaster를 사용하려면 다음과 같이 코드를 작성합니다.

import FontBlaster

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        
        // FontBlaster 초기화
        FontBlaster.blast()
        
        // 다국어 폰트 적용
        applyLocalizedFont()
    }
    
    func applyLocalizedFont() {
        let preferredFontName = "YourPreferredFontName"
        
        if let font = UIFont(name: preferredFontName, size: 17) {
            let localizedFont = UIFont.fontWithSameSize(for: font)
            let attributes = [NSAttributedString.Key.font: localizedFont]
            
            // UILabel, UIButton 등의 UI 요소에 폰트 적용
            yourLabel.attributedText = NSAttributedString(string: "Your Text", attributes: attributes)
        }
    }
}

FontBlaster.blast()를 호출하여 FontBlaster를 초기화합니다. 그리고 applyLocalizedFont() 메소드를 사용하여 다국어 폰트를 적용합니다. preferredFontName 변수에는 프로젝트에서 사용하려는 기본 폰트 이름을 지정합니다.

applyLocalizedFont() 메소드에서는 폰트를 적용하기 전에 UIFont.fontWithSameSize(for:) 메소드를 사용하여 다국어에 맞는 폰트를 가져옵니다. 이후 NSAttributedString에 폰트를 적용하고, 필요한 UI 요소에 적용합니다.

위의 코드는 UILabel에 폰트를 적용하는 예시입니다. UIButton 등의 다른 UI 요소에도 동일한 방식으로 폰트를 적용할 수 있습니다.

이제 FontBlaster를 사용하여 다국어 폰트를 앱에서 적용하는 방법을 알게 되었습니다. 원하는 폰트를 프로젝트에 추가하고, FontBlaster를 초기화한 후에는 간단하게 다국어 폰트를 적용할 수 있습니다.