Я пытаюсь использовать эту функцию, чтобы привести изображение в мой холст:загрузка изображения в холст с индикатором прогресса
function handleImage(e) {
var reader = new FileReader();
reader.onload = function (event) {
var img = new Image();
// img.onprogress = function (e) {
// ProgressPerc = e.loaded/e.total * 100;
// alert(ProgressPerc);
// $('#ProgressBar').css('width', ProgressPerc + '%');
// $("#sp_progressCount").html(ProgressPerc + '%');
// }
img.onload = function() {
// var canvas = ctx.canvas;
var hRatio = canvas.width/img.width;
var vRatio = canvas.height/img.height;
var ratio = Math.min(hRatio, vRatio);
var centerShift_x = (canvas.width - img.width * ratio)/2;
var centerShift_y = (canvas.height - img.height * ratio)/2;
ctx.clearRect(0, 0, canvas.width, canvas.height);
resizeContainer(img.width * ratio, img.height * ratio);
ctx.drawImage(img, 0, 0, img.width, img.height, 0, 0, img.width * ratio, img.height * ratio);
// d = ctx.getImageData(centerShift_x, centerShift_y, img.width * ratio, img.height * ratio);
}
img.src = event.target.result;
}
reader.readAsDataURL(e.target.files[0]);
}
желаний работы большой, но теперь я хочу, чтобы добавить индикатор, который покажет процент нагруженных данные и на основе этой ссылки http://blogs.adobe.com/webplatform/2012/01/13/html5-image-progress-events/
я сообразить, что я могу использовать этот snipet кода:
// img.onprogress = function (e) {
// ProgressPerc = e.loaded/e.total * 100;
// alert(ProgressPerc);
// $('#ProgressBar').css('width', ProgressPerc + '%');
// $("#sp_progressCount").html(ProgressPerc + '%');
// }
но чем я выяснить, что в ссылке тех функции предлагаются только быть добавлены позже и браузер не поддерживайте его. , поэтому я застрял здесь ....
, но у меня возникают ошибки в расчетах, это не дает точного% – Sora