[swift] Swift FontBlaster를 사용하여 앱의 컬렉션 뷰 셀에 폰트를 적용하는 방법은?

앱을 개발할 때, 폰트는 사용자 경험에 중요한 역할을 합니다. iOS 앱에서 컬렉션 뷰를 사용하여 그리드 형식으로 데이터를 표시할 때, 각 셀에 일관된 폰트를 적용하는 것은 중요합니다. 이러한 작업을 간단하게 해줄 수 있는 Swift FontBlaster를 사용해보겠습니다.

Swift FontBlaster란?

Swift FontBlaster는 iOS 앱에서 사용 가능한 폰트를 쉽게 로드하고 적용할 수 있는 라이브러리입니다. FontBlaster를 사용하면 앱 내부에 포함된 모든 폰트를 로드할 수 있으며, 컬렉션 뷰 셀 등에 이를 적용할 수 있습니다.

폰트 로드하기

먼저, FontBlaster를 프로젝트에 추가해야 합니다. 이를 위해 CocoaPods를 사용할 수 있습니다.

  1. Podfile을 열고 아래 줄을 추가합니다:
pod 'FontBlaster'
  1. 터미널에서 프로젝트 폴더로 이동한 뒤 pod install을 실행합니다.

폰트 로드 코드 예제

import FontBlaster

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

        // 로드할 폰트 경로로 수정
        let fontPaths = [
            Bundle.main.path(forResource: "NanumSquareRoundR", ofType: "ttf")!,
            Bundle.main.path(forResource: "NanumSquareRoundB", ofType: "ttf")!
        ]
        
        FontBlaster.blast(fontPaths: fontPaths)
        
        // 이후 폰트를 적용할 컬렉션 뷰 셀 등의 코드 작성
    }
    
    // ...
}

위 예제에서는 두 개의 폰트(NanumSquareRoundR.ttf, NanumSquareRoundB.ttf)를 로드하도록 설정하였습니다. 필요에 따라 폰트의 경로 및 파일명을 수정하여 사용하시면 됩니다.

폰트 적용하기

폰트를 로드한 후, 컬렉션 뷰 셀에 이를 적용해야 합니다. 이를 위해 폰트를 사용하고자 하는 뷰의 font 속성을 설정하면 됩니다.

func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
    let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "CustomCell", for: indexPath) as! CustomCell
    
    cell.titleLabel.font = UIFont(name: "NanumSquareRoundR", size: 14)
    cell.descriptionLabel.font = UIFont(name: "NanumSquareRoundB", size: 12)
    
    return cell
}

위 코드에서는 titleLabeldescriptionLabel이라는 두 개의 레이블에 로드한 폰트를 적용하고 있습니다. 앞서 로드한 폰트의 이름과 원하는 크기를 설정하면 해당 뷰에 폰트가 적용됩니다.

이제 Swift FontBlaster를 사용하여 앱의 컬렉션 뷰 셀에 폰트를 적용하는 방법을 알게 되었습니다. 이를 활용하여 앱을 개발하고 사용자에게 더 나은 폰트 경험을 제공할 수 있습니다.

참고 자료