お世話になっております。
現在Cordova(Ionic v1)を使用してモバイルアプリを作成しているのですが、
その中で画像ファイルをBase64に変換して文字列としてAPIに送信するプログラムを作成したいと考えております。
どのようにしたら、Cordova(Javascript)でBase64に変換することができますでしょうか。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
自己解決
$cordovaCameraを定義してあげることで、$cordovaCameraのDATAURL属性を使ってファイル送信することが可能でした。
javascript
1$scope.select_photo = function() { 2 3 var options = { 4 quality: 50, 5 destinationType: Camera.DestinationType.DATA_URL, 6 sourceType: Camera.PictureSourceType.PHOTOLIBRARY, 7 encodingType: Camera.EncodingType.JPEG, 8 saveToPhotoAlbum: false 9 }; 10 11 $cordovaCamera.getPicture(options).then(function(imageData) { 12 $scope.results = imageData; 13 var img = 'data:image/jpeg;base64,' + $scope.results; 14 var html = document.getElementById("ankenPhoto1").innerHTML; 15 document.getElementById("ankenPhoto1").innerHTML = html + '<img src="' + img + '" class="anken_photos">'; 16 $scope.photos.push(img); 17 console.log(img); 18 }, function(err) { 19 alert('エラーが発生しました。'); 20 console.log(err); 21 }); 22 };
投稿2017/10/05 08:13
総合スコア47
0
Cordovaは良くわかりませんが、カメラからの入力であればプラグインを、画像ファイルからの入力であればcanvasやFileReaderを使えば出来そうです。
【GitHub - apache/cordova-plugin-camera: Mirror of Apache Cordova Plugin camera】
https://github.com/apache/cordova-plugin-camera#cameragetpicturesuccesscallback-errorcallback-options
【Get image data in JavaScript? - Stack Overflow】
https://stackoverflow.com/questions/934012/get-image-data-in-javascript
【javascript - Phonegap encode image base64 - Stack Overflow】
https://stackoverflow.com/questions/14286014/phonegap-encode-image-base64
投稿2017/07/29 05:34
総合スコア69400
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。