Как изменить размер изображения из галереи с помощью плагина ионной камеры на Android? - PullRequest
0 голосов
/ 21 октября 2018

Я хотел бы изменить размер изображения, выбранного в галерее.Я установил targetHeight и targetWidth, но они, кажется, игнорируются ...

При выборе изображения с камеры настройка allowEdit дает мне возможность обрезать изображение, ноне когда картинка из галереи.

Я пробовал некоторые плагины Crop, но они не соответствуют моим потребностям или я не могу реализовать их на ionic V1.

у меня есть представление о том, что я могу изменить в своем коде, чтобы при выборе из галереи иметь квадратное изображение размером 200 на 200 пикселей?

// source_type is either 'camera' or 'gallery'

$scope.takePicture = function(source_type)
{
    navigator.camera.getPicture(
    function(uri){

	$ionicPopup.alert({
	         title: 'New avatar',
	         template: 'Is uploading...'
	});
	
	// Create a root reference
	  var storageRef = firebase.storage().ref();
    var newAvatar = "test.jpg";

    var contentType = contentType || '';
    var sliceSize = sliceSize || 512;

    let byteCharacters = atob(uri);
    let byteArrays = [];
           
    for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) 
    {
        let slice = byteCharacters.slice(offset, offset + sliceSize);
           
        let byteNumbers = new Array(slice.length);
        for (let i = 0; i < slice.length; i++) 
        {
            byteNumbers[i] = slice.charCodeAt(i);
        }
           
        let byteArray = new Uint8Array(byteNumbers);
           
        byteArrays.push(byteArray);
    }
           
    var mountainImagesRef = storageRef.child("storage/pics/"+newAvatar);
           
    var blob = new Blob(byteArrays);
           
    mountainImagesRef.put(blob).then(function(snapshot) 
    {
        console.log("Uploaded a base64 string!");
        $scope.addNewAvatar(newAvatar);
    });

    },
    function(){
	   $ionicPopup.alert({
	         title: 'Erreur',
	         template: 'Error'
	         });
    },
    {

      quality: 70,
    	targetHeight: 200,
    	allowEdit: true,
    	targetWidth: 200,
      destinationType: 0,
		  sourceType: source_type === 'gallery' ? 0 : 1,
      mediaType: 0,
      saveToPhotoAlbum: false
     }
     );
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...