2017-04-13 13 views
1

写真を保存すると、Firebaseのより高価な機能の1つになります。私のアプリは、私が効率的にやっていることを確認したいと思っています。私は取っているFirebase Storageに画像を効率的に保存できますか?

手順は以下の通りである:

  1. ユーザが(点が網膜上の非網膜スクリーンと二つの画素の画素を表し、500点の幅を有するようにアップロードしたい画像をリサイズスクリーン)

  2. は、ここに私の実際のコードだ

FirebaseストレージにPNG形式で指定された画像のデータをアップロードします:

let storageRef = FIRStorage.storage().reference().child("\(name).png") 
if let uploadData = UIImagePNGRepresentation(profImage.resizeImage(targetSize: CGSize(width: 500, height: Int(500*(profImage.size.height/profImage.size.width))))) { 
    storageRef.put(uploadData, metadata: nil, completion: nil) 
} 

写真は、ユーザーに表示されたときにiPhone画面の幅より少し小さくなります。私はそれらを効率的に保管しているのですか、それをフォーマットする良い方法がありますか?

**編集:もう少し研究を重ねた結果、JPGがPNGよりも効率的であることがわかったので、透明性は私にとって重要ではないので、私はそれに切り替える予定です。例えば私の答えを見てください。

+0

ハイMarksCode。あなたの投稿を編集して解決策を削除し、それを回答として投稿します([Self Answer](https://stackoverflow.com/help/self-answer)を参照)。その結論。乾杯! :) –

+1

ALをしよう!常に人々を助けてくれてありがとう。 CSの学生として、あなた、firebaseの従業員、および他の経験豊富な人々は私に世界を意味します。 – MarksCode

+1

ようこそ。コミュニティにも協力してくれてありがとう。乾杯! :) –

答えて

1

画像形式をpngからjpegに変更したところ、多くのスペースを節約できました。ここでは比較のために私の記憶の絵です:

storage

私のコードは私が圧縮率を下げる場合、それはさらに多くのスペースを節約できます確信している1の圧縮率でUIImagePNGRepresentationを使用してからUIImageJPEGRepresentationに行ってきました。

関連する問題