我使用.shadow(color:, radius:, x:, y:)来在我的应用程序中绘制阴影。这是我所知道的在 SwiftUI 中绘制应用程序的唯一方法。我使用该.sheet(isPresented:, content:)方法弹出一个视图,其中包含很多阴影,在调试视图层次结构时,我看到了这些警告:
但是我不知道如何shadowPath在SwiftUI中设置或将阴影预渲染为图像并将其放在图层下,请帮助我。
我想给照片加一个白色边框,同时保持照片的质量,所以我用UIGraphicsImageRenderer画了一个白色的背景,然后把照片画上去,结果是内存占用急剧增加,有没有更好的道路?
原图分辨率为4032*3024。
let renderer = UIGraphicsImageRenderer(size: CGSize(width: canvasSideLength, height: canvasSideLength))
let newImage = renderer.image { context in
UIColor.white.setFill()
context.fill(CGRect(x: 0, y: 0, width: canvasSideLength, height: canvasSideLength))
image.draw(in: CGRect(x: photoCanvasX, y: photoCanvasY, width: photoCanvasWidth, height: photoCanvasHeight))
}
Run Code Online (Sandbox Code Playgroud)