0

コードバカメラプラグインで画像を撮影してhtmlで表示した後、編集(切り取り、縦横比の設定、サイズ変更)するかどうかをユーザーに選択させたいそれをそのままアップロードしてください。ionic&cordovaクロッピング画像

これを行う方法はありますか?

HTML

<ion-header-bar class="bar-assertive"> 
    <h1 class="title">Photos</h1> 
</ion-header-bar> 
<ion-content ng-controller="ImgCtrl" padding="true"> 
    <button class="button button-full button-assertive" ng-click="takePhoto()"> Take Photo </button>  
    <img ng-show="imgURI !== undefined" ng-src="{{imgURI}}" style="text-align: center"> 
</ion-content> 

Javascriptを

$scope.takePhoto = function() {                   
    var options = {                     
     quality: 75, 
      destinationType: Camera.DestinationType.DATA_URL, 
      sourceType: Camera.PictureSourceType.CAMERA, 
      allowEdit: true, 
     encodingType: Camera.EncodingType.JPEG, 
     correctOrientation: true, 
     targetWidth: 800, 
     targetHeight: 1100, 
     popoverOptions: CameraPopoverOptions, 
     saveToPhotoAlbum: false                  
    };                       
    $cordovaCamera.getPicture(options).then(function(imageData) { 
     // Saving the image for later access 
                          
     $scope.imageURI = "data:image/jpeg;base64," + imageData; 

     $ionicLoading.show({ 
      template: 'Photo taken', 
      duration: 1000 
     }); 
                         
    }, function(err) {      
     $ionicLoading.show({ 
      template: 'Error ...', 
      duration: 900 
     });                        
    });                 
} 
+0

あなたは持っていますが、allowEditはそれを行います。写真を撮った後、編集画面が表示され、トリミングして確認する - >切り取った画像を受け取る – Marko

+0

JavaScript関数をトリミングする必要があります。編集を許可します。電話機にネイティブクロッピングアプリを持ち込みます。 –

+0

写真を撮った後の選択肢で、彼にエッティングオプションを知らせるのではない。 –

答えて

0

Camera.DestinationType.FILE_URLを使用してみてください、レスポンスはURLになりますと、あなたは-SRC ngのためにURLを渡し、それを直接渡すことができます。あなたのコードでは、あなたの "imageURI"は実際には画像のbase64文字列を持つ文字列です。

+0

私はこのライブラリを見つけました。どうすれば私のコードで使用できますか?https://github.com/fengyuanchen/cropperjs –

+0

bowerからcropperjsをインストールしてください。公式文書を読み、それに従ってください。それは非常に使いやすいはずです。 –

関連する問題