背景图像和画布,带铅笔盒Swiftui

背景图像和画布,带铅笔盒Swiftui,swiftui,background-image,pencilkit,Swiftui,Background Image,Pencilkit,我正在学习铅笔盒 我有一个画布,我想设置一个背景图像,我们可以在上面画 保存画布时,我希望背景图像可见 但我有一个错误: 无法将“Image”类型的值转换为预期的参数类型“UIImage” 图像(“羽毛球球场”)是我资产中的图像 我不知道如何解决这个问题,但我可能没有用正确的方法在画布上添加背景图像 struct Home : View { @State var canvas = PKCanvasView() @Environment(\.undoManager) pri

我正在学习铅笔盒

我有一个画布,我想设置一个背景图像,我们可以在上面画

保存画布时,我希望背景图像可见

但我有一个错误: 无法将“Image”类型的值转换为预期的参数类型“UIImage”

图像(“羽毛球球场”)是我资产中的图像 我不知道如何解决这个问题,但我可能没有用正确的方法在画布上添加背景图像

    struct Home : View {
    @State var canvas = PKCanvasView()
    @Environment(\.undoManager) private var undoManager
    @State var showingAlert = false
    var body: some View{
        
        NavigationView{
            MyCanvas(canvasView: canvas)
                .navigationTitle("Drawing")
                .navigationBarTitleDisplayMode(.inline)
        }
    }
  
}


struct MyCanvas: UIViewRepresentable {
    var canvasView: PKCanvasView
    let picker = PKToolPicker.init()
    
    func makeUIView(context: Context) -> PKCanvasView {
        self.canvasView.tool = PKInkingTool(.pen, color: .black, width: 15)
        self.canvasView.isOpaque = false
        self.canvasView.backgroundColor = UIColor.clear
        self.canvasView.becomeFirstResponder()

        let imageView = Image("badmintoncourt")

        let subView = self.canvasView.subviews[0]
            subView.addSubview(imageView)
            subView.sendSubviewToBack(imageView)
        return canvasView
    }
    
    func updateUIView(_ uiView: PKCanvasView, context: Context) {
        picker.addObserver(canvasView)
        picker.setVisible(true, forFirstResponder: uiView)
        DispatchQueue.main.async {
            uiView.becomeFirstResponder()
        }
    }
}
编辑: 以下是我保存图像的代码:

func SaveImage(){
    let image = canvas.drawing.image(from: canvas.drawing.bounds, scale: 1)
    UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil)
}

图像
不是
ui视图
,在这种情况下必须使用
ui图像视图

    let imageView = UIImageView(image: UIImage(named: "badmintoncourt"))

    let subView = self.canvasView.subviews[0]
        subView.addSubview(imageView)
        subView.sendSubviewToBack(imageView)

背景图像出现,但在我将画布保存到相册时背景图像不可见,怎么了?这是另一个问题;)。。。和迅捷无关。这是我的问题,;)我要问一个新问题!