ํฐํธ ์ ์ฉ์ด๋ ๊ฒ...๐ง ์ฐพ์์ ๋ฐ๋ผํ๋ฉด ๋ณ ํ ์์ด ์ ์ฉ ๋ ๋งํผ ์ฝ์ง๋ง, ์๊ทผํ ์ ์ฉ ๋จ๊ณ๊ฐ ํท๊ฐ๋ฆฌ๊ธฐ์ ๊ณผ๊ฑฐ ํ๋ก์ ํธ๋ฅผ UI๋ถํฐ ๋ฆฌํฉํ ๋ง ํ๋ ๊น์ ์ ๋ฆฌ๋ฅผ ํด๋ณด๊ธฐ๋ก ํ๋ค.
1๏ธโฃ ๋ฌด๋ฃ ํฐํธ ์ฌ์ดํธ ์ด์ฉํ๊ธฐ
https://noonnu.cc/
https://fonts.google.com/
โ ๋๋๋ ๊ตฌ๊ธ ํฐํธ ๋ฑ, ๋ฌด๋ฃ๋ก ํฐํธ๋ฅผ ์ง์ํ๋ ์ฌ์ดํธ์์ TTF ํฐํธ๋ฅผ ๋ค์ด ๋ฐ๊ธฐ
โ ๋ณดํต ํ๊ธ ํฐํธ๋ ๋๋, ์์ด ํฐํธ๋ ๊ตฌ๊ธ! ์ธ ๋๋์ด ๊ฐํ์ง๋ง, ์ด๋์ ๋ ๋๋ ํฐํธ๋ฅผ ์จ๋ณธ ๊ฒฐ๊ณผ... ์์ด ํฐํธ ๋์๋ ๋์์ง ์์์ ํ๊ตญ์ด-์์ด ๋ ๋ค ์ฌ์ฉํ ๋ ๋๋๋ง ์ฌ์ฉํด๋ ์ถฉ๋ถํ๋ฏ.
2๏ธโฃ Add to targets ์ ํฐํธ๋ฅผ ์ฌ์ฉํ ํ๋ก์ ํธ ์ฒดํฌํ๊ธฐ
3๏ธโฃ InfoPlist ์ค์
โ Information Property List์ Fonts provided by application์ ์ถ๊ฐํด์ค๋ค.
โ ๋ค์ด ๋ฐ์ ๊ธ๊ผด์ด ๊ฐ์ง ์์ดํ
์ ๋งํผ item์ ์ถ๊ฐํด์ฃผ๊ณ , value์๋ ๊ธ๊ผด๋ช
์ ํ์ฅ์๊น์ง ํฌํจํด์ ์ถ๊ฐํด์ค๋ค.
4๏ธโฃ Font ์ด๋ฆ ํ์ธ
func checkFontName() {
UIFont.familyNames.sorted().forEach { familyName in
print("*** \(familyName) ***")
UIFont.fontNames(forFamilyName: familyName).forEach { fontName in
print("\(fontName)")
}
print("---------------------")
}
โ ํฐํธ ์ด๋ฆ์ด ์ ์ฅ๋ ์ด๋ฆ๊ณผ ๋ค๋ฅผ ์๊ฐ ์์ด์ familyNames์ ํ์ธํด์ฃผ๋ ๊ณผ์ ์ด ํ์ํ๋ค.
โ ๊ฐ๋จํ ์ ์ฝ๋๋ฅผ ์ฐ๊ณ , ํ์ธ์ฉ์ด๊ธฐ๋๋ฌธ์ ๋ฐ๋ก viewDidLoad์ ํจ์๋ฅผ ํธ์ถํด์ฃผ๋ฉด
โ ๋๋ฒ๊น
์์ญ์์ ๋ด๊ฐ ๋ค์ด ๋ฐ์ ํฐํธ์ ์ด๋ฆ์ ํ์ธํ ์ ์๋ค. ๊ทธ๋ผ ์ด์ ์ ์ด๋ฆ์ ํตํด ํฐํธ๋ฅผ ์ ์ฉ์ํค๋ฉด ๋๋ค.
5๏ธโฃ ์ ์ฉ ๋ฐฉ๋ฒ
5-1. Struct๋ก ๊ด๋ฆฌํ๊ธฐ
// Font.swift
// BOOKWARM Project
//
// Created by Callie on 2023.
//
import UIKit
struct Font {
/*
==== Gmarket Sans TTF
GmarketSansTTFLight
GmarketSansTTFMedium
GmarketSansTTFBold
*/
static let light12 = UIFont(name: "GmarketSansTTFLight", size: 12)
static let medium15 = UIFont(name: "GmarketSansTTFMedium", size: 15)
static let bold18 = UIFont(name: "GmarketSansTTFBold", size: 17)
}
โ ์ฌ๋ฌ ํฐํธ๋ฅผ ์ฌ์ฉํ ๋ ์ด๋ฆ์ ์ข ๋ ๋ช
์์ ์ผ๋ก ์ง์ด์ฃผ๋ฉด ์ข๊ฒ ์ง๋ง, ๋๋ ์ง๊ธ ํฐํธ๋ฅผ ํ๋๋ก ํต์ผํด์ ์ธ ์๊ฐ์ด๋ผ ๊ฐ๋จํ๊ฒ ๊ตต๊ธฐ + ํฐํธ์ฌ์ด์ฆ๋ก ์ด๋ฆ์ ์ ํ๋ค.
5-2. font์ ์ ์ฉ์์ผ์ฃผ๊ธฐ
titleLabel.font = Font.medium15
โ struct๋ก ๊ด๋ฆฌํ๋ ํฐํธ๋ ์์ ๊ฐ์ด ๋ถ๋ฌ์์ ์ ์ฉ์ํค๋ฉด ๋๋ค.
6๏ธโฃ ๊ฒฐ๊ณผ
'๐ Dev > UIKit' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[UIKit] CustomView (0) | 2023.11.30 |
---|---|
[UIKit] ์ฑ์ ์๋ช ์ฃผ๊ธฐ (0) | 2023.11.27 |
[UIKit/Storyboard] ํค๋ณด๋ ๋ด๋ฆฌ๊ธฐ (0) | 2023.07.30 |
[UIKit/Storyboard] ํ ํ๋ก์ ํธ์์ ๋ค๋ฅธ ์คํ ๋ฆฌ๋ณด๋ ๋ณด๋ ๋ฒ (0) | 2023.07.30 |
[UIKit/Storyboard] ์์ธ๋ ํจ์ (@IBOutlet)๊ณผ ์ก์ ํจ์ (@IBAction) (0) | 2023.07.29 |