Swift
1//コードの一部です 2 @IBAction func createButton(_ sender: Any) { 3 do { 4 // ファイル読み込み 5 let firstBinaryData = try Data(contentsOf: firstImageURL, options: []) 6 let secondBinaryData = try Data(contentsOf: secondImageURL, options: []) 7 // 先頭から300000バイトを抽出。 8 let fkbData = firstBinaryData.subdata(in: 0..<300000) 9 let skbData = secondBinaryData.subdata(in: 0..<300000) 10 // 各バイトを16進数の文字列に変換。 11 let firstStringArray = fkbData.map{String(format: "%02X", $0)} 12 let secondStringArray = skbData.map{String(format: "%02X", $0)} 13 // ハイフォンで16進数を結合する。 14 let firstBinaryString = firstStringArray.joined(separator: "-") 15 let secondBinaryString = secondStringArray.joined(separator: "-") 16 print(firstBinaryString) 17 print(secondBinaryString) 18 } catch { 19 print("Failed to read the file.") 20 } 21 }
この様な処理で画像データをバイナリデータにしたいと思っているのですが
ImagePickerControllerから取得したUIImageをどうやってURL形式に変換するのかがわかりません。
海外のサイト等を見てもlocalpathに保存される?ということくらいしかよくわかりませんでした。
誰か説明をお願いします.
画像は以下のコードを使い取得しています。
Swift
1 @IBAction func selectFileOne(_ sender: Any) { 2 if UIImagePickerController.isSourceTypeAvailable(.photoLibrary) { 3 var selectFile = 1 4 // 写真を選ぶビュー 5 let firstPickerView = UIImagePickerController() 6 // 写真の選択元をカメラロールにする 7 firstPickerView.sourceType = .photoLibrary 8 // デリゲート 9 firstPickerView.delegate = self 10 // ビューに表示 11 self.present(firstPickerView, animated: true) 12 13 } 14 print("エラー") 15 } 16func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) { 17 18 if self.selectFile == 1 { 19 // 選択した写真を取得する(UIImage形式で保存している) 20 let firstImage = info[UIImagePickerControllerOriginalImage] as! UIImage 21 22 self.dismiss(animated: true) 23 }else if self.selectFile == 2 { 24 // 選択した写真を取得する(UIImage形式で保存している) 25 let secondImage = info[UIImagePickerControllerOriginalImage] as! UIImage 26 // 写真を選ぶビューを引っ込める 27 28 self.dismiss(animated: true) 29 } 30 31 }
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。