[swift] SwiftyAttributes를 사용하여 텍스트에 작은 대문자로 변경하는 방법

iOS 앱을 개발하면서 UILabel이나 UITextView 등에 텍스트를 표시할 때, 특정 텍스트를 작은 대문자로 변경하고 싶을 때가 있습니다. 이를 구현하기 위해 SwiftyAttributes 라이브러리를 사용할 수 있습니다. SwiftyAttributes는 Swift에서 텍스트 스타일을 손쉽게 적용할 수 있도록 도와주는 라이브러리입니다.

먼저, 프로젝트에 SwiftyAttributes를 설치해야 합니다. 이를 위해서는 Cocoapods 또는 Swift Package Manager를 사용할 수 있습니다. 여기서는 Cocoapods를 이용한 설치 방법을 설명하겠습니다.

먼저, 프로젝트의 Podfile에 아래와 같이 SwiftyAttributes를 추가합니다.

pod 'SwiftyAttributes'

그런 다음 터미널에서 해당 프로젝트 디렉토리로 이동하여 pod install 명령어를 실행하여 SwiftyAttributes를 설치합니다.

설치가 완료되었다면, 아래의 예제 코드를 참고하여 텍스트의 작은 대문자 스타일을 적용해보겠습니다.

import UIKit
import SwiftyAttributes

class ViewController: UIViewController {
    
    @IBOutlet weak var label: UILabel!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        let text = "Hello, World!"
        
        // 텍스트에 작은 대문자 스타일을 적용하기 위한 속성 설정
        let attributes = [NSAttributedString.Key.kern: 2,
                          NSAttributedString.Key.baselineOffset: -3]
        
        // 텍스트에 속성을 적용하여 소문자로 변환
        let attributedText = text.attributed(with: attributes)
        
        // 소문자로 변환된 텍스트를 라벨에 설정
        label.attributedText = attributedText
    }
}

위의 예제 코드에서는 SwiftyAttributes의 attributed(with:) 메서드를 사용하여 텍스트에 작은 대문자 스타일을 적용했습니다. kern 속성을 사용하여 간격을 조절하고 baselineOffset 속성을 사용하여 텍스트를 높이 조절했습니다. 설정한 속성을 text.attributed(with: attributes) 메서드에 전달하여 소문자로 변환된 텍스트를 얻은 후, 이를 라벨에 설정하여 표시합니다.

이제 앱을 실행해보면 “Hello, World!” 텍스트가 작은 대문자로 표시되는 것을 확인할 수 있습니다. 이처럼 SwiftyAttributes를 사용하면 간단하게 텍스트 스타일을 변경할 수 있습니다.

참고 자료