首页 > 解决方案 > SwiftUI 斜体文本剪辑

问题描述

我注意到Text带有.italic()剪辑字母的a: 在此处输入图像描述

设置帧大小无济于事: 在此处输入图像描述

.paddings()也无济于事。kerning(5)我不想使用它,因为它仅在右边缘部分解决了问题,但它增加了不需要的字母间距。

struct ItalicTest: View {
var body: some View {
    Text("F")
        .font(Font.system(size: 60))
        .italic()
        .fontWeight(.black)
        .frame(width: 60, height: 60)
        .background(Color.red)
    }
}

我想防止剪辑。您知道使用 pure 的解决方案SwiftUI吗?

标签: iosswiftui

解决方案


我知道这是一个老问题,但我只是遇到了同样的问题并找到了一个合适的解决方案。

您必须在文本中添加填充,并要求 swiftui 在渲染之前折叠填充和文本。

struct ItalicTest: View {
var body: some View {
    Text("F")
        .font(Font.system(size: 60))
        .italic()
        .fontWeight(.black)
        .padding(.horizontal) // <-- add padding
        .drawingGroup() // collapse the view and render together
    }
}

推荐阅读