2017-06-14 3 views
0

So bekam ich eine Ansicht mit einer Ebene und einigen Sublayer, die compositingFilter mit Mischmodi haben, um die Ebenen zu sehen. Ich möchte alle Sublayer in einem Bild in der Fotobibliothek speichern. Alles sieht in den Ansichten gut aus, aber wenn ich den CALayer speichere, indem ich ihn mit UIGraphicsContext in einen UIImage umwandle und UIImageWriteToSavedPhotosAlbum benutze, bekomme ich nur eine Ebene gespeichert.Mehrschichtige CALayer-Bilder in Bibliothek speichern?

Weiß jemand, wie man mehrere Sublayer in einem CALayer in einen UIImage konvertiert?

Antwort

1

Hatte das gleiche Problem mit Ihnen, habe ich viele Unterschichten zu einem CALayer von UIImageView von imageView.layer.addSublayer(newLayer) hinzugefügt.

Gelöst durch Befolgen der Anweisungen anderer. Hoffe, dass mein Code eine Idee geben könnte.

@IBAction func saveArtwork(_ sender: Any) { 

    UIGraphicsBeginImageContext(self.imageView.bounds.size) 

    // The code below may solve your problem 
    imageView.layer.render(in: UIGraphicsGetCurrentContext()!) 

    let image = UIGraphicsGetImageFromCurrentImageContext() 
    UIGraphicsEndImageContext() 

    let activity = UIActivityViewController(activityItems: [image!], applicationActivities: nil) 
    present(activity, animated: true, completion: nil) 
} 
Verwandte Themen