我有兩個按鈕,第一個從畫廊瀏覽圖像,第二個用於拍照。我在兩種情況下使用cordova camera plugin
。離子的1.x:作物圖像
選擇圖像後,我想之前裁剪使用cordova file transfer plugin
發送給服務器。我試着使用一些插件,如jr-crop
,angular-image-crop
,ngImgCrop
。問題是插件返回一個base64圖像,但我想獲取圖像URL(而不是dataUrl)。請任何幫助!
我有兩個按鈕,第一個從畫廊瀏覽圖像,第二個用於拍照。我在兩種情況下使用cordova camera plugin
。離子的1.x:作物圖像
選擇圖像後,我想之前裁剪使用cordova file transfer plugin
發送給服務器。我試着使用一些插件,如jr-crop
,angular-image-crop
,ngImgCrop
。問題是插件返回一個base64圖像,但我想獲取圖像URL(而不是dataUrl)。請任何幫助!
我的解決方案(@egycode):
$scope.image_gallery = function() {
var options = {
quality: 100,
correctOrientation: true,
sourceType: 0
};
$cordovaCamera.getPicture(options).then(function(data) {
console.log(data);
$scope.crop(data);
console.log('camera data image_gallery: ' + angular.toJson(data));
}, function(error) {
console.log('camera error image_gallery: ' + angular.toJson(error));
});
}
$scope.crop = function(url) {
$jrCrop.crop({
url: url,
width: 261,
height: 362
}).then(function(canvas) {
console.log(canvas);
var image = canvas.toDataURL();
//var image is the result, you can show it using : $scope.pictureUrl = image;
}, function() {
// User canceled or couldn't load image.
});
}
非常感謝... –
歡迎您:) –
你可以給我完整的代碼,請。 –
,你找到了一個解決方案! –
我做了我自己的解決方案,適應了我的情況。代碼在答案中,因爲太長而無法放在這裏。 –