2017-11-26 16 views
0

私は、透明性を持つPNG画像としてSKSpriteNodeをカメラロールに変換しようとしています。カメラロールにPNG画像としてSKSpriteNodeを保存する方法は?

これは、透明度の画像はありませんが保存されます。

let image = UIImage(cgImage: (spriteNode.texture?.cgImage())!) 
UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil) 

これは文句:

は、型の値に変換できません 'のデータの?'期待される引数の型 'UIImage' 私はカメラロールにPNGとしてSKSpriteNodeを保存することができますどのように

let image = UIImage(cgImage: (createdCloudShadow.texture?.cgImage())!) 
let image2 = UIImagePNGRepresentation(image) 
UIImageWriteToSavedPhotosAlbum(image2, nil, nil, nil) 

か?

答えて

0

UIImagePNGRepresentation(_:)関数は、documentationからわかるように、Data?を返します。

だから、あなたはおそらく次のように書き換える必要があります。

let image = UIImage(cgImage: (createdCloudShadow.texture?.cgImage())!) 
let imData = UIImagePNGRepresentation(image) 
let image2 = UIImage(data: imData) 
UIImageWriteToSavedPhotosAlbum(image2, nil, nil, nil) 
関連する問題