gpt4 book ai didi

ios - 如何使用字体修饰符? SwiftUI 中的大写和字体大小

转载 作者:行者123 更新时间:2023-12-01 21:58:43 24 4
gpt4 key购买 nike

我正在尝试使用修饰符为我的应用程序创建一些默认字体。如果有更简单的方法,我很想知道。目前,我有

struct PrimaryLabel: ViewModifier {
func body(content: Content) -> some View {
content
.font(Font.body.smallCaps())
.font(.system(size: 20, weight: .light, design: .serif)) // this is not working. Only the first one will '.font' will work

}
}

可用性:
Text("Hello World").modifier(PrimaryLabel())

有没有办法改变字体类型(例如使用 AmericanTypewriter-Light 字体),全部大写,并使用类似 weight: .light, design: .serif 的样式,粗体等?我不想定义每一个文本。第二个 .font结构中的修饰符不起作用。

最佳答案

第一个修饰符仅可见,这是合乎逻辑的,尝试应用少量 ,background 或 .foregroundColor .... 它的工作方式相同。

尝试

VStack {
Text("ALFA").font(.largeTitle)
Text("Beta").foregroundColor(Color.red)
}
.font(.system(size: 150))
.foregroundColor(Color.blue)

enter image description here

您可以使用不同的初始化程序创建字体
init(CTFont)

从平台字体实例获取字体。
static func system(Font.TextStyle, design: Font.Design) -> Font

获取具有给定样式和设计的系统字体。
static func system(size: CGFloat, weight: Font.Weight, design: Font.Design) -> Font

指定要使用的系统字体,以及要应用于文本的样式、粗细和任何设计参数。
static func custom(String, size: CGFloat) -> Font

获取具有给定名称和大小的自定义字体。

你可以进一步设置你的文本

样式化 TextView
func bold() -> Text

对文本应用粗体字重。
func italic() -> Text

对文本应用斜体。
func fontWeight(Font.Weight?) -> Text

设置文本的字体粗细。
func baselineOffset(CGFloat) -> Text

设置文本的基线偏移。
func tracking(CGFloat) -> Text

设置文本的跟踪。
func kerning(CGFloat) -> Text

设置两个字符之间的间距或字距。
func underline(Bool, color: Color?) -> Text

对文本应用下划线。
func strikethrough(Bool, color: Color?) -> Text

对文本应用删除线。

警告!!
并非所有组合都受支持!
How to apply .italic() to .largeTitle Font?

关于ios - 如何使用字体修饰符? SwiftUI 中的大写和字体大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60764063/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com