Skip to content

Commit 94fb454

Browse files
applebuddyios-min
authored andcommitted
[Fix] #350 applyCofficeFont viewModifier 기능에 lineHeight custom option 추가
1 parent b6538e2 commit 94fb454

File tree

1 file changed

+17
-7
lines changed
  • Projects/Coffice/Sources/App/CommonComponents

1 file changed

+17
-7
lines changed

Projects/Coffice/Sources/App/CommonComponents/Fonts.swift

+17-7
Original file line numberDiff line numberDiff line change
@@ -223,25 +223,35 @@ extension CofficeFont {
223223
}
224224

225225
struct FontModifier: ViewModifier {
226-
var font: CofficeFont
227-
var fontOriginalLineHeight: CGFloat {
226+
let font: CofficeFont
227+
let customFontLineHeight: CGFloat?
228+
229+
var fontLineHeight: CGFloat {
230+
if let customFontLineHeight {
231+
return customFontLineHeight
232+
}
233+
return font.lineHeight
234+
}
235+
236+
var originalFontLineHeight: CGFloat {
228237
return UIFont(name: font.name, size: font.size)?.lineHeight ?? 20
229238
}
230239

231-
init(font: CofficeFont) {
240+
init(font: CofficeFont, lineHeight: CGFloat? = nil) {
232241
self.font = font
242+
self.customFontLineHeight = lineHeight
233243
}
234244

235245
func body(content: Content) -> some View {
236246
content
237247
.font(.custom(font.name, size: font.size))
238-
.lineSpacing(font.lineHeight - fontOriginalLineHeight)
239-
.padding(.vertical, (font.lineHeight - fontOriginalLineHeight) / 2)
248+
.lineSpacing(fontLineHeight - originalFontLineHeight)
249+
.padding(.vertical, (fontLineHeight - originalFontLineHeight) / 2)
240250
}
241251
}
242252

243253
extension View {
244-
func applyCofficeFont(font: CofficeFont) -> some View {
245-
modifier(FontModifier(font: font))
254+
func applyCofficeFont(font: CofficeFont, lineHeight: CGFloat? = nil) -> some View {
255+
modifier(FontModifier(font: font, lineHeight: lineHeight))
246256
}
247257
}

0 commit comments

Comments
 (0)