我使用的是Angular Image Cropper Lib,其Angular 1.6。
该示例显示了通过input type='file'
从本地计算机选择文件后如何裁剪文件。
我想裁剪已经上传到服务器的文件。我的问题是如何通过具有URL图像来初始化农作物?
向cropper.sourceImage
提供base64字符串为:
function toDataURL(url, callback) {
var xhr = new XMLHttpRequest();
xhr.onload = function() {
var reader = new FileReader();
reader.onloadend = function() {
callback(reader.result);
}
reader.readAsDataURL(xhr.response);
};
xhr.open('GET', url);
xhr.responseType = 'blob';
xhr.send();
}
toDataURL('https://www.gravatar.com/avatar/d50c83cc0c6523b4d3f6085295c953e0',
function(dataUrl) {
$timeout(function() {
$scope.cropper.sourceImage = dataUrl;
console.log(dataUrl);
}, 0);
我们将$scope.cropper.sourceImage = dataUrl;
与$timeout
包装到 Fire Digest Cycle
demo