我希望元素的边界像铅笔画在SwiftUI
例如,像这样(https://i.stack.imgur.com/cKras.png)
我已经尝试过strokeBorder(ImagePaint()),但是当我使用它的时候,border的轮廓变得太干净了,这是我不希望的。
struct TestView: View {
var body: some View{
Circle()
// .aspectRatio(contentMode: .fit)
// .shadow(radius: 10)
// .padding(.horizontal, 30)
.strokeBorder(ImagePaint(image:Image("pencil3"), scale:0.3), lineWidth: 20)
// .frame(width:100, height:100)
}
}
struct TestView_Previews: PreviewProvider {
static var previews: some View {
TestView()
}
}
1条答案
按热度按时间vs3odd8k1#
一种方法是使用四元曲线构建一个圆,每条曲线都有一点随机倾斜。当其中的几个是奠定了对方给出了相当令人信服的外观。然后可以将结果作为覆盖应用于视图:
字符串
的数据
您可能已经注意到,旋转效果会套用至手绘圆,以便曲缐连接的点彼此都有偏移。当基础形状为方形时,此操作效果良好。对于非正方形,最好用同样的方法画一个潦草的圆,然后将其拉伸到所需的尺寸。可以将
ScribbledCircle
的主体更改为以下内容,以便通过这种方式支持所有形状:型
的