如何在 SwiftUI Canvas 中打开或关闭抗锯齿功能?
struct CanvasView: View {
var body: some View {
Canvas { context, size in
// CGContextSetShouldAntialias(context, false);
}
}
}
GraphicsContext
中没有用于打开和关闭抗锯齿功能的“全局”开关。相反,可以为每个需要 FillStyle
的绘制操作单独控制抗锯齿。您可以在创建 FillStyle
时指定是否要抗锯齿。
例如:
context.fill(
somePath, with: .color(someColor),
fillStyle: .init(antialiased: false)
)
否则,您始终可以获得
CGContext
并使用 CGContext
API。
context.withCGContext { cgContext in
cg.setShouldAntialias(false)
// do the rest of your drawing here...
}