2017-06-14 5 views
0

私は、レイヤーといくつかのサブレイヤーを持つビューを取得しました。これらのサブレイヤーは、レイヤーを見るためにブレンドモードで設定されたcompositingFilterを持っています。すべてのサブレイヤを写真ライブラリの1つの画像に保存したい。すべてがビューでうまく見えますが、CALayerを保存するときにUIGmageWriteToSavedPhotosAlbumを使用してUIImageに変換すると、1つのレイヤーしか保存されません。マルチレイヤのCALayerイメージをライブラリに保存しますか?

誰もがCALayerの複数のサブレイヤをUIImageに変換する方法を知っていますか?

答えて

1

あなたと同じ問題があった場合、UIImageViewのCALayerに多くのサブレイヤを追加しました。imageView.layer.addSublayer(newLayer)です。

以下の手順で解決します。 私のコードはどんなアイデアでもできます。

@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) 
} 
関連する問題