在视图中呈现时,Unicode 字符有奇怪的间隙

Unicode char has odd gap when rendered in view

我正在使用以下代码来展示一张扑克牌。不知道为什么顶部有很大的差距。

这是在 iOS 15.4

var body: some View {
    Text(String(Character(unicodeScalarLiteral: "\u{1F0A1}")))
        .font(.system(size: size))
        .foregroundColor(.red)
}

比较这个笑脸的显示方式:

这个符号在字形框中的布局是这样的(注意它相对于基线的位置):

这里是拉丁语A的比较:

如果两者合二为一Text

可能您只需要不同的 symbol/image,或者尝试使用一些手动解决方法,例如

    Text("\u{1F0A1}")
            .baselineOffset(20)